1.环境确认

  1. [root@mysql ~]# ps -ef |grep -i mysql
  2. root 9173 1 0 2020 ? 00:00:00 /bin/sh /mysql/data/mysql-5.7.21/bin/mysqld_safe --datadir=/mysql/data/mysql-5.7.21/data --pid-file=/mysql/data/mysql-5.7.21/data/mysqld.pid
  3. mysql 9367 9173 0 2020 ? 06:07:52 /mysql/data/mysql-5.7.21/bin/mysqld --basedir=/mysql/data/mysql-5.7.21 --datadir=/mysql/data/mysql-5.7.21/data --plugin-dir=/mysql/data/mysql-5.7.21/lib/plugin --user=mysql --log-error=/mysql/data/mysql-5.7.21/data/mysqld.log --pid-file=/mysql/data/mysql-5.7.21/data/mysqld.pid --socket=/tmp/mysql.sock --port=3306
  4. root 17045 17002 0 09:36 pts/0 00:00:00 grep --color=auto -i mysql
  5.  
  6. mysql -uroot -pmysql@2020
  7.  
  8. mysql -e "SELECT table_schema,SUM(data_length+index_length)/1024/1024 AS total_mb,SUM(data_length)/1024/1024 AS data_mb,SUM(index_length)/1024/1024 AS index_mb, SUM(data_free)/1024/1024 AS free_mb,COUNT(*) AS tables_num,CURDATE() AS today FROM information_schema.tables where table_schema not in ('mysql','sys','information_schema','performance_schema') GROUP BY table_schema ORDER BY total_mb desc\G"
  9. *************************** 1. row ***************************
  10. table_schema: app_manager
  11. total_mb: 153.42434692
  12. data_mb: 138.15676880
  13. index_mb: 15.26757813
  14. free_mb: 14.00000000
  15. tables_num: 19
  16. today: 2021-06-07
  17. *************************** 2. row ***************************
  18. table_schema: lifeapp_config
  19. total_mb: 0.14376068
  20. data_mb: 0.11055756
  21. index_mb: 0.03320313
  22. free_mb: 0.00000000
  23. tables_num: 8
  24. today: 2021-06-07
  25. 2 rows in set (0.01 sec)
  26.  
  27. =============================

2.新环境准备

  1. mkdir -p /mysql/data/mysql-5.7.25/data
  2. chown -R mysql:mysql /mysql/data/mysql-5.7.25/
  3. chmod 750 /mysql/data/mysql-5.7.25/
  4.  
  5. cd /mysql/data/
  6. tar -zxf mysql-5.7.25-linux-glibc2.12-x86_64.tar.gz
  7. mv mysql-5.7.25-linux-glibc2.12-x86_64 mysql-5.7.25
  8. chown -R mysql.mysql mysql-5.7.25

3.关闭原环境

  1. tail -100f /mysql/data/mysql-5.7.21/data/mysqld.log
  2. /mysql/data/mysql-5.7.21/bin/mysqladmin -uroot -p'mysql@2020' shutdown
  3.  
  4. cp /etc/my.cnf /etc/my.cnf.07bak
  5. cp -rp /mysql/data/mysql-5.7.21/data/* /mysql/data/mysql-5.7.25/data/

4.启动新环境

  1. /mysql/data/mysql-5.7.25/mysql-5.7.25-linux-glibc2.12-x86_64/bin/mysqld --basedir=/mysql/data/mysql-5.7.25 --datadir=/mysql/data/mysql-5.7.25/data --plugin-dir=/mysql/data/mysql-5.7.25/mysql-5.7.25-linux-glibc2.12-x86_64/lib/plugin --user=mysql --log-error=/mysql/data/mysql-5.7.25/data/mysqld.log --pid-file=/mysql/data/mysql-5.7.25/data/mysqld.pid --socket=/tmp/mysql.sock --port=3306 --skip-grant-tables --skip-networking &

5.升级数据字典

  1. /mysql/data/mysql-5.7.25/mysql-5.7.25-linux-glibc2.12-x86_64/bin/mysql_upgrade -S /tmp/mysql.sock
  2.  
  3. /mysql/data/mysql-5.7.25/mysql-5.7.25-linux-glibc2.12-x86_64/bin/mysqladmin -S /tmp/mysql.sock -uroot -p'mysql@2020' shutdown

6.修改环境变量

  1. vi /etc/profile
  2. PATH=$PATH:/mysql/data/mysql-5.7.21/bin
  3. 改为
  4. PATH=$PATH:/mysql/data/mysql-5.7.25/mysql-5.7.25-linux-glibc2.12-x86_64/bin
  5.  
  6. 退出重新登陆加载环境变量并确认:
  7. which mysql

7.修改参数文件

  1. vi /etc/my.cnf
  2. [mysqld]
  3. sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
  4.  
  5. basedir = /mysql/data/mysql-5.7.25
  6. datadir = /mysql/data/mysql-5.7.25/data
  7. port = 3306
  8. socket = /tmp/mysql.sock
  9. character-set-server=utf8
  10.  
  11. log-error = /mysql/data/mysql-5.7.25/data/mysqld.log
  12. pid-file = /mysql/data/mysql-5.7.25/data/mysqld.pid

8.启动环境

  1. /mysql/data/mysql-5.7.25/mysql-5.7.25-linux-glibc2.12-x86_64/bin/mysqld_safe --datadir=/mysql/data/mysql-5.7.25/data --pid-file=/mysql/data/mysql-5.7.25/data/mysqld.pid &

9.检查确认

  1. cat /etc/my.cnf
  2.  
  3. mysql -uroot -pmysql@2020
  4. [root@mysql ~]# mysql -uroot -pmysql@2020
  5. mysql: [Warning] Using a password on the command line interface can be insecure.
  6. Welcome to the MySQL monitor. Commands end with ; or \g.
  7. Your MySQL connection id is 4
  8. Server version: 5.7.25 MySQL Community Server (GPL)
  9.  
  10. Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
  11.  
  12. Oracle is a registered trademark of Oracle Corporation and/or its
  13. affiliates. Other names may be trademarks of their respective
  14. owners.
  15.  
  16. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
  17.  
  18. mysql> SELECT table_schema,SUM(data_length+index_length)/1024/1024 AS total_mb,SUM(data_length)/1024/1024 AS data_mb,SUM(index_length)/1024/1024 AS index_mb, SUM(data_free)/1024/1024 AS free_mb,COUNT(*) AS tables_num,CURDATE() AS today FROM information_schema.tables where table_schema not in ('mysql','sys','information_schema','performance_schema') GROUP BY table_schema ORDER BY total_mb desc\G
  19. *************************** 1. row ***************************
  20. table_schema: app_manager
  21. total_mb: 153.42434692
  22. data_mb: 138.15676880
  23. index_mb: 15.26757813
  24. free_mb: 10.00000000
  25. tables_num: 19
  26. today: 2021-06-07
  27. *************************** 2. row ***************************
  28. table_schema: lifeapp_config
  29. total_mb: 0.14376068
  30. data_mb: 0.11055756
  31. index_mb: 0.03320313
  32. free_mb: 0.00000000
  33. tables_num: 8
  34. today: 2021-06-07
  35. 2 rows in set (0.01 sec)

总结:
1.升级前检查库的角色(主从),数据量的大小。数据量大可以采用这种方式,数据量小可以使用mysqldump进行导出导入。
2.升级重点就是执行新版本的初始化和upgrade脚本检查。
3.本次环境安装不标准,环境变量和my.cnf文件为聚堆全路径,所以需要修改这两项。规范安装应该建立软连接(ln -s mysql-5.7 /full_path ),无需进行修改。

MYSQL小版本升级(5.7.21至5.7.25)的更多相关文章

  1. 记一次mysql小版本升级

    最近护网操作比较紧,基线和漏洞检查比较频繁,新扫描出来的mysql漏洞需要修复,没有啥好的修复方法,只剩下升级版本这一条路,生产环境是5.7.12,二进制文件直接解压使用的,看了一下现在最新的版本,5 ...

  2. 使用ThinkPHP开发中MySQL性能优化的最佳21条经验

    使用ThinkPHP开发中MySQL性能优化的最佳21条经验讲解,目前,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,而这更 ...

  3. mysql 5.6到percona 5.6小版本升级

    假设原来是mysql 5.6.19社区版,现在要升级到percona server 5.6.30. 对于大的数据库来说,采用mysqldump方式进行迁移太花费时间了,可采用新安装加载原来数据库的方式 ...

  4. 【转】MySQL性能优化的最佳21条经验

    文章转自: http://blog.csdn.net/waferleo/article/details/7179009 今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关 ...

  5. MySQL性能优化的最佳21条经验

    今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情.当我们去设计数据库表结构,对操作数据 ...

  6. MySQL性能优化的最佳21条经验【转载】

    今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情.当我们去设计数据库表结构,对操作数据 ...

  7. 平时一些mysql小技巧及常识

    >navicat premium 快捷键1.ctrl+q 打开查询窗口2.ctrl+/ 注释sql语句3.ctrl+shift +/ 解除注释4.ctrl+r 运行查询窗口的sql语句5.ctr ...

  8. PHP之连接mysql小练习

    mysql Test.sql 1 -- phpMyAdmin SQL Dump -- version 4.6.6 -- https://www.phpmyadmin.net/ -- -- Host: ...

  9. mysql小细节随笔

    1, MySQL decimal(x,y)  存入根据y的下一位四舍五入,查了半天以为是laravel模型做了预处理,结果发现不是,是mysql decimal类型数据自动处理的,有好,也不好,合并订 ...

随机推荐

  1. ArcGIS地形分析--TIN及DEM的生成,TIN的显示

    DEM是对地形地貌的一种离散的数字表达,是对地面特性进行空间描述的一种数字方法.途径,它的应用可遍及整个地学领域.通过对本次实习的学习,我们应加深对TIN建立过程的原理.方法的认识:熟练掌握ArcGI ...

  2. java 将字符串拆分成块装数组

    split 将字符串拆分 regex=???,根据???以其为界进行拆分. public String[] split(String regex) 根据给定正则表达式的匹配拆分此字符串. 该方法的作用 ...

  3. CAS 的ABA 问题

    CAS CAS:Compare and Swap, 翻译成比较并交换. java.util.concurrent包中借助CAS实现了区别于synchronized同步锁的一种乐观锁. 其原理是CAS有 ...

  4. mzy git学习,git协同开发忽略文档配置以及一些杂点(九)

    回忆一个电脑多账户问题 之前也说了,如果使用ssh登陆的话,一个电脑就只能登陆一个账号了,不像通过凭据可以切换(但是其实也可以每次去生成新的公钥和私钥,只要你不嫌麻烦) 再次补充: ssh-keyge ...

  5. c++中的一些会用到的函数

    1 #include<iostream> 2 #include<string> 3 using namespace std; 4 int main() { 5 string s ...

  6. python manage.py migrate出错

    python manage.py migrate出错 在建立Django项目过程中执行 python manage.py migrate命令,出现如下错误: 解决办法: 编辑D:\install fi ...

  7. linux系统配置本地yum源

    1. 前言 学习Linux系统需要大量的实验,而每次安装系统和准备安装系统后的基础配置比较耗时费力.如果在生产环境中,遇到内网(无法访问互联网)情况下,就需要利用挂载的ISO文件内的Packages中 ...

  8. 20210824 Prime,Sequence,Omeed

    考场 T1 貌似是 luogu 上原题 T2 计数,想起了这题和这题,但没有 \(n^2\) 一档的分...准备打个表 T3 期望 DP,但暴力是 \(O(qn)\) 的,发现 \(combo\) 的 ...

  9. 从需求去理解 Linux dbus与基于dbus协议的无agent软件管理

    What is IPC IPC [Inter-Process Communication] 进程间通信,指至少两个进程或线程间传送数据或信号的一些技术或方法.在Linux/Unix中,提供了许多IPC ...

  10. Excel导入保存附件和解析数据

    Excel导入保存附件和解析数据 一,前端上传附件的组件 1.先给一个下载模板的按钮 // 下载Excel模板 downLoadExcel: function () { window.open(GLO ...