2023-02-24 MYSQL小版本升级

在mysql关闭时,参数innodb_fast_shutdown 影响着表的存储引擎为innodb的行为,参数为0,1,2三个值。

0,代表当MYSQL关闭时,Innodb需要完成所有full purge和merge insert buffer操作,这需要花费时间来完成。

如果做Innodb plugin升级,通常需要将这个参数调为0,然后在关闭数据库。

1,是参数的默认值,不需要完成full purge和merge insert buffer操作,但是在缓冲池的一些数据脏页还是会刷新到磁盘。

2,表示不需要完成full purge和merge insert buffer操作 ,也不将缓冲池中的数据脏页写回磁盘,而是将日志都写入日志文件。

这样不会有任何事务丢失,但是mysql在下次启动时,会执行恢复操作(recovery)

如果在上次关闭innodb的时候是在innodb_fast_shutdown=2或是mysql crash这种情况,那么它会利用redo log重做那些已经提交了的事务。

接下来的操作过程是:

(1). Rollback uncompleted transitions 取消那些没有提交的事务

(2). Purge all 清除无用的undo页

(3). Merge insert buffer 合并插入缓冲

MYSQL升级过程:

select @@innodb_fast_shutdown;

SET GLOBAL innodb_fast_shutdown=0;

停止 MySQL 服务:

cd  /home/data/mysql/bin

./mysql  -uroot -pRobot_0316 -P 3305

shutdown

解压下载的二进制安装包,覆盖原来的安装路径:

tar -zxvf mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz

--basedir=/home/data/mysql      --datadir=/home/data/mysql/date

cp -frp  mysql-5.7.32-linux-glibc2.12-x86_64/*    /home/data/mysql/

使用现有的目录启动 MySQL 服务:

./mysqld_safe  --defaults-file=/etc/my.cnf  --datadir=/data/mysql57/data/  --user=mysql &

运行 mysql_upgrade:

mysql_upgrade -u root -p

[root@db01 bin]# mysql_upgrade -uroot -p

Enter password:

关闭MySQL重新启动:

cd  /home/data/mysql/bin

./mysqladmin  -uroot -pRobot_0316 -P 3305  shutdown

----mysqladmin -u root -p shutdown

./mysqld_safe --defaults-file=/etc/my.cnf --user=mysql &

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容