MySQL5.5 导出的 *.sql 文件,直接导入 MySQL5.7 或 MySQL8.0 有兼容性的问题吗?

2018 年 6 月 9 日
 miniyao
有一个老的数据库是 MySQL5.5,准备版本升级的时候连数据库一起升级到最新的 MySQL (如果 MySQL8.0 兼容性没问题,就不考虑 MySQL5.7 了),不清楚 5.5 版本导出的 *.sql 文件,导入到 MySQL8.0,大家有遇到过兼容性的坑吗?
14509 次点击
所在节点    MySQL
23 条回复
goodryb
2018 年 6 月 9 日
所以最好办法难道不是你先创建一个 MySQL8,用 5.5 的备份导入测试一次?
miniyao
2018 年 6 月 9 日
@goodryb 本地测试看起来没有问题,毕竟版本跨度比较大了,意外的坑难免
caola
2018 年 6 月 9 日
标准的 sql 语句,能有什么兼容问题?
除非你使用的是新版本已废弃的功能
miniyao
2018 年 6 月 9 日
@caola 就是一个普通的 CMS 内容数据库,导出的一个备份 *.sql 文件,没有用什么稀奇古怪的功能
lzhnull
2018 年 6 月 10 日
注意为空的字段
ETiV
2018 年 6 月 10 日
要出问题也多半是表结构定义的 sql

可以先不要数据,只导出 5.5 的 create table,导进新版本看一下
Mac
2018 年 6 月 10 日
SQL 导入导出没遇到什么麻烦,创建用户遇到了,8.0 默认密码加密方式和 5 的不一样,所以很多第三方管理软件不支持新版本,需要自己在设置文件里改加密方式。话说 heidisql 这个版本帝突然停更了。
shiji
2018 年 6 月 10 日
我最常见到的问题是 0000-00-00 00:00:00 这种日期导致的错误。但这个可以修改配置忽略
yemoluo
2018 年 6 月 10 日
还有一种方法,先搭建一个主从同步的
jjianwen68
2018 年 6 月 10 日
8.0mysqldump 之前版本的数据库默认会有问题,8.0 的改变有点大啊
abusizhishen
2018 年 6 月 10 日
最好用 MySQL 官方工具 MySQL workbench 导入导出
20has
2018 年 6 月 10 日
@GTim 主从好像只是从库版本高于主库就行了吧,好思路!
不过没实践过,不知道大伙怎么看😊
20has
2018 年 6 月 10 日
@abusizhishen 最好的导入导出应该还是服务器开 screen 和命令行吧(ノ_ _)ノ
doubleflower
2018 年 6 月 10 日
这么多年我还碰到过导入不兼容过
这个应该设计上是考虑兼容的否则让人还怎么升版本
miniyao
2018 年 6 月 10 日
@Mac 我也遇到这个问题了,开始安装的时候提示了用户加密的方式不同,选了推荐的强加密,然后就会出现和老版本不兼容的情况。
pathbox
2018 年 6 月 10 日
做好备份和回滚
CFO
2018 年 6 月 10 日
5.7 到 5.5 的遇到过问题 反过来没遇到过
yemoluo
2018 年 6 月 10 日
看了楼上的讨论,我觉得主从同步是目前比较靠谱的方式,甚至可以在同一台机器上安装两个版本,不同的端口号,如果同步完成且没有出错,直接改端口启动
wvc
2018 年 6 月 10 日
我升级到 8.0 之后使用最新版的 phpmyadmin 进行操作,全都提示语法错误,根本没法用……
f2f2f
2018 年 6 月 10 日
生产环境不建议 8.0 啊,先 5.7 比较稳

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/461809

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX