1. 写在前面
最近在写一个Halo的插件,为了测试用把概览里边的对外访问地址给改了,改完是可以保存的。
如图所示,过一会再运行插件的时候启动不起来了。我知道这个地址有问题,但是能保存为啥不能启动,这找谁说理去。
启动不起来就没法再改回去,就只能对数据库下手了。
2. H2数据库
Halo博客默认使用的是H2数据库
,虽然一直在用但是对它知之甚少,这会要改数据了都不知道从哪下手。
通义千问告诉我可以使用H2控制台
启动,先下一个H2
的jar包
,再通过命令行启动。
jar包
下好以后执行命令,H2控制台
就启动起来了。
输入JDBC URL
:jdbc:h2:/Users/tiandaren/Desktop/Project/Project/plugin-links-health-monitor/workplace/db/halo-next
用户名和密码是在Halo主项目
里找到的。
这就连接成功了
3. 修改数据
数据找到了,就是这一条,但是并不能直接看。
把十六进制转换成字符串以后就能看到了,红框圈出来的就是罪魁祸首。
改好之后转换成十六进制更新到表里。
注意更新的时候要使用X'...'
把DATA数据表示成十六进制BLOB
数据,不然就会被H2当成ASCII字符串,把每个字符传成对应的字节,最终存储的是这个字符串的UTF-8编码
。
4. 重新启动
以上。