mysql跨版本升级数据库8.0遇到的问题浅析

mysql 版本升级到最新版本,能够体验很多新的功能和特性。而这种升级往往需要跨版本升级,执行一些升级操作,让mysql更新适配新的数据结构。

这里旧版本的mysql 是5.7版本,目标版本是mysql 8.0.25 简称 mysql8。

首先完整备份 mysql 5.7

mysqldump -uroot -p --all-databases > bak.sql

使用--all-databases 执行完整的备份,包括mysql内置的名为mysql的数据库和内部数据表。

安装好mysql8,并启动,然后倒入bak.sql 文件

mysql -uroot -p < bak.sql

导入后 关闭mysql8,这时关闭mysql8后,因为没有执行更新升级操作,是无法再次启动的。

mysqld_safe --user=mysql --upgrade=FORCE &

执行上面的命令进行升级操作,并启动mysql8,如果升级操作正常完成,mysql8 将正常启动。