首页 > 数据库 > MySQL > 基于Windows的MySQL5.7本地升级
在升级数据库之前,首先对数据库进行备份。可以采用冷备或热备
如果服务器有足够的时间能够停机进行备份操作,可以直接采用冷备的方式。在将数据库关闭之后,直接将数据目录复制到备份目录中。
注意:冷备前需要先查看配置文件,确认数据库的所有文件是否都在数据目录中,部分日志有没有设置到其他目录中。
mysqldump是MySQL自带的备份工具,我们只需要直接使用就行。
C:\mysql57\bin>mysqldump -uroot -pmysql -P3357 --single-transaction -E -R --all-databases >\mydata\mysql57\full.sql
使用上述命令备份全库至指定目录。
打开mydata\mysql57\full.sql文件,若最后输出Dump completed on,则说明备份成功。
就地升级包括关闭旧的MySQL服务器,用新的二进制包替换旧的二进制包,在现有数据目录上重新启动MySQL,以及升级现有安装中需要升级的剩余部分。
如果服务器正在运行,请停止它。如果将服务器作为服务安装,请从命令提示中使用以下命令停止服务
C:\> SC STOP mysqld_service_name 或者 net stop mysqld_service_name
如果您没有将MySQL服务器作为服务运行,请使用mysqladmin来阻止它:
C:\> "C:\Program Files\MySQL\MySQL Server 5.7\bin\mysqladmin" -u root shutdown
删除旧的安装目录数据内容。
解压缩新的安装包到旧的安装目录。
用新的安装目录和旧的数据目录启动数据库服务。
如果您将MySQL服务器作为服务运行:
SC START mysqld_service_name 或者 net start mysqld_service_name
mysql_upgrade检查所有数据库中的所有表是否与当前版本的MySQL不兼容。mysql_upgrade还会升级 mysql系统数据库,以便您可以利用新的特权或功能。
最后如果弹出了OK输出,则说明升级数据库成功。
mysql_upgrade -uroot -pmysql
关闭并重新启动MySQL服务器,以确保对系统表所做的所有更改均生效:
SC Stop mysqld_service_name 或者 net stop mysqld_service_name
SC START mysqld_service_name 或者 net start mysqld_service_name
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/30310891/viewspace-2782950/ ,如需转载,请注明出处,否则将追究法律责任。