目 录CONTENT

文章目录

Halo系列——H2库切换至Mysql库

林汐~
2023-06-16 / 0 评论 / 0 点赞 / 68 阅读 / 519 字 / 正在检测是否收录...

起因

由于我有一套公共的基础服务,所以官方的1.5.X版本的docker-compose不能直接使用。我就摸索着直接创建独立的Halo容器,然后使用command配置mysql与redis的地址,以为这样就完事了。

项目也正常启动了,按捺不住我激动的心情,直接开始了配置!

这一配置就不对劲了。我明明改了很多东西的,但是mysql库中连一张表都没有!渐渐地,我发现了data文件夹中的db文件夹,它居然存在本地了?!!

更要命的是,*.db文件,完全不知道这是啥数据库,Navicat和DataGrip根本打不开。。

不过,偶然发现容器里面竟然是SpringBoot架构的!赶紧去下了源码。

源码就清晰多了,1.5.X配置文件中只设置了H2库的连接方式,根本就没有Mysql连接方式!也不知道官网的docker-compose是怎么通过测试的

于是看了官网的docker命令启动方式,发现只要在data目录下放个SprintBoot的配置文件即可

操作

备份数据

后台管理 -> 系统 -> 小工具 -> 博客备份,三个都备份一下吧

上传SpringBoot配置

将application.yaml文件上传至data文件夹内,具体流程可以看这篇文章 -> Halo系列——搭建与林汐小栈同款博客

重启Halo容器

在docker-compose.yml目录下运行sudo docker-compose down成功停止后,运行sudo docker-compose up -d即可

初始化数据

重新进入blog之后,他会让你重新配置服务器数据。
不要慌,我们只要点击第二个tab,恢复一下之前备份的那个json文件即可

至此,完成H2库至Mysql库的迁移~

其他工具

H2数据库编辑工具

halo1.5.X版本H2数据库

0

评论区