我正在尝试将数据库从mysql 5.7移植到mysql 5.5。 起初,我使用了以下命令
mysqldump -u root -p --all-databases > alldbs.sql
当我尝试在mysql 5.5中导入数据库时,我不断收到类似
的错误第572行的错误1064(42000):您的SQL语法出错; 检查与您的MySQL服务器版本对应的手册 在第9行'STATS_PERSISTENT = 0'附近使用正确的语法
它抱怨STATS_PERSISTENT=0
声明。
然后我试了
mysqldump -u root -p --compatible=mysql40 --all-databases > alldbs.sql
但这只是给了我
第26行的错误1064(42000):您的SQL语法出错; 检查与您的MySQL服务器版本对应的手册 在第22行'TYPE = InnoDB'附近使用正确的语法
它抱怨TYPE=InnoDB
语句,应该是ENGINGE=InnoDB
。即使使用--compatible
选项,它仍会保留STATS_PERSISTENT
语句。
有没有办法将mysql 5.7数据库移植到mysql 5.5?
更新
要清楚我的问题,我正在寻找 relialble ,即无骇客的方式来移植数据库。我已尝试将TYPE
替换为ENGINE
,删除STATS_PERSISTENT
等等。其他一切都会出现。每次我移植数据库时,我都不愿意跳过这些箍。我正在通过mysqldump
或类似工具寻找可靠的方法来完成这项工作。
如果无法做到这一点,那么我将不得不切换到另一个数据库。