当前位置: 首页 >数据库 > Linux MySQL 5.7二进制 小版本升级

Linux MySQL 5.7二进制 小版本升级

MySQL5.7二进制安装在Unix/Linux上升级时,分为就地和逻辑升级方法。
注意:目录路径请根据实际情况修改
 
一 、就地升级
就地升级包括关闭旧的MySQL服务器,用新的MySQL服务器替换旧的MySQL二进制文件或软件包,在现有数据目录上重新启动MySQL,以及运行mysql_upgrade。
官网下载所需的版本。
 
1、数据库生产一定要记得数据库备份,通常采用xtrabackup热备份
innobackupex --defaults-file=/etc/my.cnf --user=root --password=kkk123456 /u02/mysql_backup/full
 
2、关闭数据库
service mysqld stop
 
也可以以下方式关闭,本次未使用:
配置MySQL以通过设置innodb_fast_shutdown为 执行慢速关闭 0。
mysql -u root -p --execute="SET GLOBAL innodb_fast_shutdown=0"
在关闭过程中,InnoDB执行完全清除并在关闭之前更改缓冲区合并,这可确保在发布版本之间存在文件格式差异时完全准备好数据文件。
关闭旧的MySQL服务器
mysqladmin -u root -p shutdown
 
3、解压数据库软件mysql-5.7.36到新目录下,如/data/mysql-5.7.36,并且设定权限
chown -R mysql.mysql /data/mysql-5.7.36
chmod -R 775 /data/mysql-5.7.36
 
4、复制my.cnf到当前数据库软件目录、并修改安装目录
basedir=/data/mysql-5.7.36/
 
5、启动新版本数据库
nohup /data/mysql-5.7.36/bin/mysqld_safe --defaults-file=/data/mysql-5.7.36/my.cnf --datadir=/data/mysqlware/mysql/data --user=mysql &
 
6、开始更新数据库字典(重要)
./mysql_upgrade -S /tmp/mysql.sock -P 8079 -uroot -p
 
#mysql_upgrade检查所有数据库中的所有表是否与当前版本的MySQL不兼容。mysql_upgrade还会升级mysql系统数据库,以便可以利用新的权限或功能
#更新信息
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
Found outdated sys schema version 1.5.1.
Upgrading the sys schema.
Checking databases.
检查所需要更新的数据库信息 并且数据库更新相关数据库字典等信息
sys.sys_config OK
Upgrade process completed successfully.
 
完成后无报错提示更新成功。
 
再次访问数据库,确认版本是否更新成功
select version();
7、重新设置开机自启动服务、环境变量、/usr/bin的mysql软连接
 
二、逻辑升级
逻辑升级涉及使用备份或导出实用程序(如mysqldump)从旧MySQL实例导出SQL ,安装新的MySQL服务器以及将SQL应用于新的MySQL实例。
简单说明逻辑升级就是导出数据,然后升级,最后再导入数据;安全性高,主要针对数据量不大的数据库;常用的工具:mysqldump和Xtrabackup。
 
1、从以前的MySQL安装中导出现有数据:
2、 关闭旧的MySQL服务器
mysqladmin -u root -p shutdown
3、安装MySQL 5.7
复制’root’@‘localhost’ 显示在屏幕上的临时密码或写入错误日志以供日后使用。
4、 使用新数据目录启动MySQL 5.7服务器:
mysqld_safe --user=mysql --datadir=/path/to/5.7-datadir
5、 重置root密码:
shell> mysql -u root -p
Enter password: **** <- enter temporary root password
mysql> ALTER USER USER() IDENTIFIED BY 'your new password';
6、导入数据到新的MySQL服务器中
7、 运行mysql_upgrade
mysql_upgrade -u root -p
 
mysql_upgrade检查所有数据库中的所有表是否与当前版本的MySQL不兼容。mysql_upgrade还会升级mysql系统数据库,以便您可以利用新的权限或功能。
注意 mysql_upgrade不会升级帮助表的内容。 8、关闭并重新启动MySQL服务器以确保对系统表所做的任何更改都生效。 mysqladmin -u root -p shutdown mysqld_safe --user=mysql --datadir=/path/to/5.7-datadir

作者:Gao_D
来源链接:https://www.cnblogs.com/gaochanggui2021/p/16393653.html

版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。

2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。





本文链接:https://www.javaclub.cn/database/117462.html

标签:MySQL升级
分享给朋友:

“Linux MySQL 5.7二进制 小版本升级” 的相关文章

MySQL 查询指定时间范围内的数据 2022年06月06日 16:59:25
会mysql不一定会sql 2022年06月07日 04:41:06
MySql 查询两张表的数据差别 2022年06月11日 20:14:35
mysql查询重复的 2022年06月12日 13:49:33
mysql的查询操作 2022年06月14日 12:38:40
mysql简单查询 2022年06月15日 14:03:59
mysql中的json查询 2022年06月16日 22:34:46