环境说明:
升级前Mysql版本:5.6.45
升级后Mysql版本:5.7.31
Mysql配置文件位置:/usr/local/mysql
Mysql数据文件位置:/data/mysql
1、 首先查看数据库日志,是否有误异常报错。
PS:操作数据库前需要备份,且如果有做存储过程,需要删掉。
2、停用数据库,将下载下来的mysql5.7.31的安装包解压,修改原/usr/local/mysql配置文件路径为/usr/local/mysql_bak,然后使用mv命令将mysql5.7.31的解压包转移到/usr/local下。
下载链接:https://dev.mysql.com/downloads/file/?id=496466
PS:解压出来居然有两个包,需要把mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz再解压一次,这里有种套娃的感觉。
3、给mysql配置文件授权后,编辑my.cnf文件,注释掉2个参数,使用命令启用mysql:#vim /etc/my.cnf
innodb_additional_mem_pool_size
thread_concurrency
#/usr/local/mysql/bin/mysqld_safe--defaults-file=/etc/my.cnf--socket=/usr/local/mysql/mysql.sock &
PS:如果这一步mysql无法起来,需要查看mysql的error.log文件进行排错。
4、数据库升级
#/usr/local/mysql/bin/mysql_upgrade –u 用户 –p密码 --socket=/usr/local/mysql/mysql.sock
看到最后提示successfully,就说明升级成功了。
5、检查mysql 日志是否有异常报错,查看mysql版本是否已经升级为5.7.31,由下图可以看到已经成功升级为5.7.31版本。
6、设置sql严谨性,由于mysql5.7严谨性比5.6版本要高,可能会导致某些业务出现异常,可以使用开启5.6兼容命令来解决:
mysql> set sql_mode = '';
SET GLOBAL sql_mode ='NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES';
set global show_compatibility_56=ON;
技术交流欢迎加入Q群:177428068