MySQL 小版本升级操作步骤
Bing@DBA
于 2020-11-25 17:35:07 发布
2493
收藏 19
分类专栏: MySQL
版权
MySQL
专栏收录该内容
38 篇文章5 订阅
订阅专栏
一、前言
业务场景中需要通过小版本升级来解决 MySQL 的一些 BUG 需要升级到更高版本来解决,本篇博客记录 MySQL 小版本升级操作过程。
二、升级过程
查看当前 MySQL 版本:
root@mysql 17:05: [(none)]> select @@version;
+------------+
| @@version |
+------------+
| 5.7.29-log |
+------------+
1 row in set (0.01 sec)
root@mysql 17:05: [(none)]>
1
2
3
4
5
6
7
8
9
目前为 5.7.29 计划升级为 5.7.32
首先从官网下载升级的二进制版本包上传到服务器:
[root@db01 opt]# ls
mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz
[root@db01 opt]#
1
2
3
按照自己需求备份数据和配置文件:
数据比较重要稳妥起见可以先做一个备份。
配置MySQL以通过设置 innodb_fast_shutdown 为执行慢速关闭:
root@mysql 17:08: [(none)]> select @@innodb_fast_shutdown;
+------------------------+
| @@innodb_fast_shutdown |
+------------------------+
| 1 |
+------------------------+
1 row in set (0.01 sec)
root@mysql 17:08: [(none)]> SET GLOBAL innodb_fast_shutdown=0;
Query OK, 0 rows affected (0.00 sec)
1
2
3
4
5
6
7
8
9
10
停止 MySQL 服务:
mysqladmin -u root -p shutdown
1
解压下载的二进制安装包,覆盖原来的安装路径:
tar -zxvf mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz
cp -frp mysql-5.7.32-linux-glibc2.12-x86_64/* /usr/local/mysql
1
2
使用现有的目录启动 MySQL 服务:
./mysqld_safe --defaults-file=/etc/my.cnf --datadir=/data/mysql57/data/ --user=mysql &
1
.运行 mysql_upgrade:
mysql_upgrade -u root -p
[root@db01 bin]# mysql_upgrade -uroot -p
Enter password:
Checking if update is needed.
Checking server version.
Running queries to upgrade MySQL server.
Checking system database.
mysql.columns_priv OK
mysql.db OK
mysql.engine_cost OK
mysql.event OK
mysql.func OK
mysql.general_log OK
mysql.gtid_executed 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.server_cost 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
The sys schema is already up to date (version 1.5.2).
Checking databases.
new_data.auth_group OK
new_data.auth_group_permissions OK
new_data.auth_permission OK
new_data.cate OK
new_data.collection OK
new_data.comment OK
new_data.django_admin_log OK
new_data.django_content_type OK
new_data.django_migrations OK
new_data.django_session OK
new_data.new OK
new_data.new_correlation OK
new_data.tb_users OK
new_data.tb_users_groups OK
new_data.tb_users_user_permissions OK
sys.sys_config OK
Upgrade process completed successfully.
Checking if update is needed.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
关闭 MySQL 重新启动:
mysqladmin -u root -p shutdown
./mysqld_safe --defaults-file=/etc/my.cnf --user=mysql &
1
2
3
登陆到 MySQL 查询版本:
root@mysql 17:34: [(none)]> select @@version;
+------------+
| @@version |
+------------+
| 5.7.32-log |
+------------+
1 row in set (0.00 sec)
1
2
3
4
5
6
7
三、升级过程中可能会遇到的问题
可能会在 mysql_upgrade 步骤中夯住,可能是因为该实例在复制集群中,建议可以先暂时 stop slave 然后再重新 mysql_upgrade 即可。
————————————————
版权声明:本文为CSDN博主「Bing@DBA」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_42768234/article/details/110136036