mysql升级版本方法_升级-小版本升级【5.6.42-->5.6.48】

cbc7af9769337ce1ed67f021e9cb9772.png

升级-小版本升级【5.6.42-->5.6.48】

  • 记得升级前先备份
  • 了解新版本新增
  • 了解已被废弃功能与参数
  • 建议升级到大版本最新版本,再升级到下一个版本。例如5.6先升级到最后一个小版本,再升级到5.7
  • 不支持跳过版本的升级。例如,不支持从MySQL 5.5直接升级到5.7。
  • 支持小版本跳跃升级
  • 先在测试环境测试没问题后再上生产
  • 参数最好自行看下有没有哪些不一致的改变
  • 升级前 mysql -uroot -p -e"show variables;" > /opt/mysql5642.txt
  • 升级后 mysql -uroot -p -e"show variables;" > /opt/mysql5648.txt

升级有两种方式

  • in-place upgrade

关闭当前mysql,替换二进制包,在现有的数据目录上重启MySQL,并运行mysql_upgrade.

  • logical upgrade

使用mysqldump 或 mydumper 导入导出数据,实现版本的升级。

in-place方式升级

  • 旧版本 5.6.42
  • 新版本 5.6.48
  • 系统: CentOS 7.6

1-解压需要更新的版本软件包

# 解压
tar zxf mysql-5.6.48-linux-glibc2.12-x86_64.tar.gz -C /usr/local/

# 创建软链
cd /usr/local/
ln -s /usr/local/mysql-5.6.48-linux-glibc2.12-x86_64/ mysql5648

2-XA事务检查

mysql -S /data/mysql/mysql.sock -uroot -p
# XA检查是否有值
mysql> XA RECOVER;
Empty set (0.00 sec)

# 若有值,则需要 COMMIT 或 ROLLBACK xid
mysql> XA COMMIT xid;
或
mysql> XA ROLLBACK xid;

3-完全关闭MySQL

# 配置MySQL执行慢关机,InnoDB在关闭之前执行完全清除和更改缓冲区合并
mysql -S /data/mysql/mysql.sock -uroot -p --execute="SET GLOBAL innodb_fast_shutdown=0";
# 设置完参数后关闭MySQL
mysqladmin -u root -p shutdown

4-更换程序

[root@initnode local]# mv /usr/local/mysql mysql5642
[root@initnode local]# mv /usr/local/mysql5648 mysql

75cb2ba30b0be23d58611eadf7e38638.png

更换为

b7f0d5ced91957b6f646d5d41aecf138.png

5-启动mysql

mysqld_safe --user=mysql &
6-执行升级
[root@initnode ~]# mysql_upgrade -u root -p
Enter password: 
Looking for 'mysql' as: mysql
Looking for 'mysqlcheck' as: mysqlcheck
Running 'mysqlcheck' with connection arguments: '--port=13306' '--socket=/data/mysql/mysql.sock' 
Warning: Using a password on the command line interface can be insecure.
Running 'mysqlcheck' with connection arguments: '--port=13306' '--socket=/data/mysql/mysql.sock' 
Warning: Using a password on the command line interface can be insecure.
mysql.columns_priv                                 OK
mysql.db                                           OK
mysql.event                                        OK
mysql.func                                         OK
mysql.general_log                                  OK
mysql.help_category                                OK
mysql.help_keyword                                 OK
mysql.help_relation                                OK
mysql.help_topic                                   OK
mysql.innodb_index_stats                           OK
mysql.innodb_table_stats                           OK
mysql.ndb_binlog_index                             OK
mysql.plugin                                       OK
mysql.proc                                         OK
mysql.procs_priv                                   OK
mysql.proxies_priv                                 OK
mysql.servers                                      OK
mysql.slave_master_info                            OK
mysql.slave_relay_log_info                         OK
mysql.slave_worker_info                            OK
mysql.slow_log                                     OK
mysql.tables_priv                                  OK
mysql.time_zone                                    OK
mysql.time_zone_leap_second                        OK
mysql.time_zone_name                               OK
mysql.time_zone_transition                         OK
mysql.time_zone_transition_type                    OK
mysql.user                                         OK
Running 'mysql_fix_privilege_tables'...
Warning: Using a password on the command line interface can be insecure.
Running 'mysqlcheck' with connection arguments: '--port=13306' '--socket=/data/mysql/mysql.sock' 
Warning: Using a password on the command line interface can be insecure.
Running 'mysqlcheck' with connection arguments: '--port=13306' '--socket=/data/mysql/mysql.sock' 
Warning: Using a password on the command line interface can be insecure.
drop_test.d_tab2                                   OK
OK

6-再次关闭启动即可

mysqladmin -uroot -p shutdown
mysqld_safe --user=mysql &
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值