如何将MySQL 5.5.40升级到MySQL 5.7

mat*_*ict 18 mysql database centos upgrade version

如何升级MySQL版本

当前MySQL版本:5.5.40

目标MySQL版本:MySQL 5.7

OS:CentOS 6.5版(最终版)

Ale*_*lex 12

可能最快的方法是使用mysqldump转储旧版数据库版本并将其恢复为5.7个新数据库.

流程的顺畅程度取决于您在5.5中使用的5.7中丢弃的功能.

在我的情况下,唯一的功能,在5.7中被删除是时间戳默认 '0000-00-00 00:00:00'修复它是在转储文件上运行sed并替换''0000-00-000000: 00:00'与CURRENT_TIMESTAMP

sed -i.bu的/'\''0000-00-00 00:00:00'\''/ CURRENT_TIMESTAMP/g'fix_dumo.sql

然后,fixed_dump.sql被导入到新的5.7 DB中,并且运行顺畅.我希望这有帮助.

  • @John,当然,这不是一个通用的解决方案。有时,需要投入时间来设计通用解决方案,例如设计公共 API 时。但当事情需要直接完成时(利用可以采取的放松和假设),这就是它的工作原理。感谢您在“咸味问题”雷达下飞行! (2认同)

Mar*_*lff 10

升级路径是MySQL 5.5 - > MySQL 5.6 - > MySQL 5.7

请参阅https://dev.mysql.com/doc/refman/5.7/en/upgrading.html


tan*_*dar 6

第1步:进行备份

mysqldump --lock-all-tables -u root -p --all-databases > dump.sql
Run Code Online (Sandbox Code Playgroud)

第2步:删除旧的mysql

sudo apt-get remove mysql-server
sudo apt-get autoremove
Run Code Online (Sandbox Code Playgroud)

第3步:安装新版本的mysql 5.6

sudo apt-get install mysql-client-5.6 mysql-client-core-5.6

sudo apt-get install mysql-server-5.6
Run Code Online (Sandbox Code Playgroud)

为5.7

wget http://dev.mysql.com/get/mysql-apt-config_0.6.0-1_all.deb

sudo dpkg -i mysql-apt-config_0.6.0-1_all.deb

sudo apt-get update

sudo apt-get install mysql-server
Run Code Online (Sandbox Code Playgroud)

第4步:恢复您的数据

mysql -u root -p <dump.sql


小智 5

是.从"逻辑升级",您可以从5.5迁移到5.7.这种方式:5.5 - > 5.6 - > 5.7,只需要"就地"升级,带数据文件夹.

请参阅:https: //www.percona.com/forums/questions-discussions/mysql-and-percona-server/43956-what-is-the-preferred-mysql-upgrade-path-5-5-to-5- 7


Aje*_*han 5

我可能迟到了,但是没有停机或停机时间最短的简单快速的解决方案可能是AWS Database-Migration-Service,它可以用来将您的数据库升级到不同的版本以及其他服务器或RDS.

我已经尝试过这个并且在没有任何停机时间的情况下将MySQL5.5转换为MySQL5.7.这是一个相同的演示 - 如何将MySQL5.5迁移到MySQL5.7

脚步:

  • 将当前的MySQL设置为master

  • 使用所需用户在其上创建一个带有MySQL5.7的新实例/服务器

  • 获得AWS DatabaseMigrationService(DMS)并创建一个Replication实例

  • 创建复制实例后,它会要求填充连接详细信息到源(MySQL5.5)和目标(MySQL5.7)数据库.

  • 在DMS中创建任务,这将是您想要迁移数据的逻辑(特定数据库或特定表)

  • 开始任务

  • 当任务完成且数据同步时,只需将指向MySQL5.5的DNS条目切换到MySQL5.7即可