Chevereto的数据库从MySQL 8迁移至MariaDB 10的注意事项

[复制链接]
查看: 5300   回复: 5
发表于 2023-10-30 16:10:04 | 显示全部楼层 |阅读模式
https://madlax.pw/2022/01/426.html

Chevereto的数据库从MySQL 8迁移至MariaDB 10可能会导致表缺失。昨晚将图床服务器从美西迁移到OVH法国机器,打算缩减服务器支出。

旧机器环境为
Nginx -Tengine2.2.4(2.3.2)
MySQL 8.0.24
PHP-7.4
新机器环境为
Nginx -Tengine2.2.4(2.3.2)
MySQL 10.5.10-MariaDB
PHP-7.4
唯一区别为数据库,迁移之后,网站报错,CRON任务也报错
    PDOException [42S02]: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'XXXXXXXX.XXX_locks' doesn't exist

看来是数据库缺了表,检查对比,发现新数据库导入后缺少了2个表
    _assets(此处省略前缀)
    _locks(此处省略前缀)

这两个表的排序规则都是utf8mb4_0900_ai_ci,utf8mb4_0900_ai_ci在mysql8以下是不被支持的,因此在导入新MariaDB数据库后无法创建这两个表。
解决方法:
方法一,将导出的数据库里的utf8mb4_0900_ai_ci修改为utf8mb4_unicode_ci或者utf8mb4_general_ci再导入新MariaDB数据库。
方法二,导出的数据库导入新MariaDB数据库后,单独创建这两个新表。



然后网站恢复。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

 楼主| 发表于 2023-10-30 16:11:04 | 显示全部楼层
10好像更吃CPU吧,而且性能其实还是不如低版本的好用
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-10-30 16:11:35 | 显示全部楼层
赞同。。。。。。。。。。。。。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-10-30 16:12:33 | 显示全部楼层
https://v3-docs.chevereto.com/setup/server/requirements.html#database
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-10-30 16:12:51 | 显示全部楼层
MariaDB 10.x == MySQL 5.5, 5.6, 5.7, 8.0,,,
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-10-30 16:13:17 | 显示全部楼层
mysql版本兼容做的本身就很差,还一堆bug
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则