最近升级lobechat到v2的时候,发现run的时候报错,postgresql缺少db全文搜索插件,本来不想搞得升级db终于还是到不得不升的这一天了吗。反正postgresql都要升级了,正好mysql也升级一下算了。
mysql需要迁移的表不多,也就umami和gitea两个大户,这两个大户各有有200M的数据,大部分都是些没有用的执行记录和访问记录,剩下的flarum,wordpress等表都是小卡拉米。虽然大部分数据不重要,但是我那几个私人仓库的代码数据和wordpress的水文还是蛮重要的,丢了就吐狗血了(我可不想再写一遍)
使用dbearve导出db数据,再导入,不过在导入gitea这些表还是有一些坑的,经常因为sql单条语句过长(700kb+的长度)导致报错
这种只能单行复制出来执行,但是人工复制这样一条超级超级长的还是太蛋疼了,最后面我体验下来发现只有navicat的数据同步功能,能方便的同步mysql5.7的数据到8.4过去,并且执行不会出错,粗略检查下复制过来也没有少数据,不愧是收费软件,debaver还是差点意思。
还有另外一个就是改排序结构了,虽然改了默认db的排序结构为,但是已有的表是不会自动变更的,还是沿用旧的
用这个sql语句可以批量获得能够执行的变更表排序方式的语句,修改一下table_schema为你的db库名称,复制结果后运行就可以了
