MySQL 5.6升级至MySQL 5.7--------版本升级最佳实战
admin
2023-05-17 21:42:18
0

1. 背景

   MySQL 5.7是当前MySQL最新版本,与MySQL 5.6版本相比,有如下特征

  * 性能和可扩展性:改进 InnoDB 的可扩展性和临时表的性能,从而实现更快的网络和大数据加载等操作。

   * JSON支持:使用 MySQL 的 JSON 功能,你可以结合 NoSQL 的灵活和关系数据库的强大。

   * 改进复制 以提高可用性的性能。包括多源复制,多从线程增强,在线 GTIDs,和增强的半同步复制。 

   * 性能模式 提供更好的视角。我们增加了许多新的监控功能,以减少空间和过载,使用新的 SYS 模式显著提高易用性。

   * 安全: 我们贯彻“安全第一”的要求,许多 MySQL 5.7 新功能帮助用户保证他们数据库的安全。

   * 优化: 重写了大部分解析器,优化器和成本模型。这提高了可维护性,可扩展性和性能。

   * GIS: MySQL 5.7 全新的功能,包括 InnoDB 空间索引,使用 Boost.Geometry,同时提高完整性和标准符合性。


2. 当前运行的MySQL 5.6环境

   * MySQL当前版本

[root@MySQL ~]# /usr/local/mysql/bin/mysql  -p123456
Warning: Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.6.36 MySQL Community Server (GPL)

Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> select version();
+-----------+
| version() |
+-----------+
| 5.6.36    |
+-----------+
1 row in set (0.05 sec)

mysql>


   * MySQL所在目录

[root@MySQL ~]# ll /usr/local/mysql-5.6.36-linux-glibc2.5-x86_64
total 72
drwxr-xr-x  2 mysql mysql  4096 Jun 24 04:05 bin
-rw-r--r--  1 mysql mysql 17987 Mar 18 14:43 COPYING
drwxr-xr-x  3 mysql mysql  4096 Jun 24 04:05 data
drwxr-xr-x  2 mysql mysql  4096 Jun 24 04:05 docs
drwxr-xr-x  3 mysql mysql  4096 Jun 24 04:05 include
drwxr-xr-x  3 mysql mysql  4096 Jun 24 04:06 lib
drwxr-xr-x  4 mysql mysql  4096 Jun 24 04:05 man
-rw-r--r--  1 root  root    943 Jun 24 04:08 my.cnf
drwxr-xr-x 10 mysql mysql  4096 Jun 24 04:05 mysql-test
-rw-r--r--  1 mysql mysql  2496 Mar 18 14:43 README
drwxr-xr-x  2 mysql mysql  4096 Jun 24 04:05 scripts
drwxr-xr-x 28 mysql mysql  4096 Jun 24 04:05 share
drwxr-xr-x  4 mysql mysql  4096 Jun 24 04:06 sql-bench
drwxr-xr-x  2 mysql mysql  4096 Jun 24 04:05 support-files


   * MySQL 数据所在目录

[root@MySQL ~]# ll /data/mysql_data
total 110616
-rw-rw---- 1 mysql mysql       56 Jun 24 04:10 auto.cnf
-rw-rw---- 1 mysql mysql 12582912 Jun 24 04:10 ibdata1
-rw-rw---- 1 mysql mysql 50331648 Jun 24 04:10 ib_logfile0
-rw-rw---- 1 mysql mysql 50331648 Jun 24 04:08 ib_logfile1
drwx------ 2 mysql mysql     4096 Jun 24 04:08 mysql
-rw-rw---- 1 mysql mysql     1771 Jun 24 04:10 MySQL.err
-rw-rw---- 1 mysql mysql        6 Jun 24 04:10 MySQL.pid
drwx------ 2 mysql mysql     4096 Jun 24 04:08 performance_schema
drwx------ 2 mysql mysql     4096 Jun 24 04:08 test


   * MySQL 启动脚本basedir与datadir设置

[root@MySQL ~]# grep -E '^basedir=|^datadir=' /etc/init.d/mysqld 
basedir=/usr/local/mysql
datadir=/data/mysql_data

 

3. 升级

   * 正常停止数据库

[root@MySQL mysql]# /etc/init.d/mysqld stop
Shutting down MySQL.. SUCCESS!


   * 下载 MySQL 5.7 最新版 [ 推荐从MySQL官方下载 ]

[root@MySQL ~]# wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz


   * 解压到指定目录

[root@MySQL ~]# tar zxvf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz -C /usr/local/


   * 删除原有的软链接

[root@MySQL ~]# unlink /usr/local/mysql


   * 新建软链接指向 MySQL 5.7目录

[root@MySQL ~]# ln -s  /usr/local/mysql-5.7.18-linux-glibc2.5-x86_64 /usr/local/mysql

   * 通过脚本启动MySQL

[root@MySQL ~]# /etc/init.d/mysqld start
Starting MySQL..... SUCCESS!


   * 利用MySQL 5.7包中的mysql_upgrade 升级MySQL数据中的系统表 -p指定密码

[root@MySQL ~]# /usr/local/mysql/bin/mysql_upgrade -s -p123456
mysql_upgrade: [Warning] Using a password on the command line interface can be insecure.
The --upgrade-system-tables option was used, databases won't be touched.
Checking if update is needed.
Checking server version.
Running queries to upgrade MySQL server.
Upgrading the sys schema.
Upgrade process completed successfully.
Checking if update is needed.


   * 连接MySQL服务查看版本

[root@MySQL ~]# /usr/local/mysql/bin/mysql -p123456
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.7.18 MySQL Community Server (GPL)

Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> select version();
+-----------+
| version() |
+-----------+
| 5.7.18    |
+-----------+
1 row in set (0.00 sec)



4. 总结


以需求驱动技术,技术本身没有优略之分,只有业务之分。

相关内容

热门资讯

原创 外... 外星翻译官的翻车现场:地球语言真的太难了! 银河系翻译官协会(假想机构)最近发布了一份年度报告,总...
首飞成功!已突破大重量载荷发射... 科技日报记者 付毅飞 实习生 张城辉 记者从蓝箭航天获悉,5月14日11时0分,朱雀二号改进型遥五运...
京东携手MAXHUB共推AI智... PChome消息,近日,京东与智能会议平板领域领军品牌MAXHUB正式签署战略合作协议,标志着双方战...
29个智能气象站启动业务试运行 本报北京5月15日电(记者李红梅)记者从中国气象局获悉:北京密云等29个智能气象站已于近日启动业务试...
广西一载15人车辆坠河,10人... 记者从广西环江毛南族自治县相关方面获悉,据初步了解,5月16日21时30分许,一辆汽车在环江县洛阳镇...
iOS 26.5更新苹果地图两... 苹果地图是iOS 26.5此次更新中获得新功能的应用之一。以下是地图用户需要了解的最新变化。 推荐...
每经热评 | 黄仁勋喝蜜雪冰城... 每经评论员 朱成祥 黄仁勋近期到访北京,被拍到在胡同喝豆汁、吃炸酱面、举着蜜雪冰城饮料。他表情轻松,...
我省3项目被列入工信部先进计算... 本报太原5月15日讯(记者王蕾)近日,工业和信息化部公布了2025年先进计算赋能新质生产力典型应用案...
薛贵:学习的革命——脑科学与人... 1 学习的本质不是知识的装卸, 而是雕刻大脑的“芯片” 耶鲁大学前校长理查德·查尔斯·莱文曾说过:如...
伊朗:已制定管理霍尔木兹海峡指... 新华社德黑兰5月16日电 伊朗伊斯兰议会国家安全和外交政策委员会主席易卜拉欣·阿齐兹16日在社交媒体...