电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

MySQL数据库版本升级

来源:金蝶云社区作者:金蝶2024-09-233

MySQL数据库版本升级

1 背景

金蝶云苍穹系统可以使用MySQL作为关系型数据库,随着MySQL的广泛应用和版本迭代,我们有时会需要对使用的MySQL环境进行升级来修复bug或安全漏洞。所以本文以MySQL8.0.21升级8.0.23的方法为例(小版本升级方法相同)。


如需从MySQL5.7升级到8.0,则需要重新安装高版本数据库,并使用备份恢复的方法恢复数据到新库中,新数据库参数配置文件等需要手工修改。

注意事项:升级操作均需在测试环境进行验证测试,请勿直接升级生产环境!

2 升级前准备

2.1 备份整个数据库

通过mysqldump备份数据库:

mysqldump --no-defaults -u数据库用户名 -p数据库密码 -h数据库地址 --port=数据库端口 --max-allowed-packet=256M --set-gtid-purged=OFF --single-transaction -R --flush-logs --master-data=2 --all-databases > all_database.sql

2.2 准备mysql安装包

从mysql官网下载升级目标安装包,下载地址:https://dev.mysql.com/downloads/mysql/


image.webp


选择安装路径:将下载好的安装包上传到指定路径,图中是以/kingdee为例


image.webp

2.3 环境检查

本章节中所有mysql相关命令如果找不到,就将命令加上绝对路径,/usr/local/mysql/bin,例如mysqlcheck—>/usr/local/mysql/bin/mysqlcheck

2.3.1 在线检查数据库

在线检查数据库,执行以下命令:

mysqlcheck -u root -p -hlocalhost --all-databases --check-upgrade


image.webp


如果mysqlcheck报告任何错误,请更正问题。

2.3.2 不得有使用不具有本机分区支持的存储引擎的分区表

要标识此类表,请执行以下查询:

SELECT TABLE_SCHEMA, TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA NOT IN ('information_schema','mysql','sys','performance_schema') AND ENGINE NOT IN ('innodb', 'ndbcluster') AND CREATE_OPTIONS LIKE '%partitioned%';


查询结果中的任何表都必须更改为使用InnoDB或不分区。

要将表存储引擎更改为InnoDB,请执行以下语句:

ALTER TABLE table_name ENGINE = INNODB;   

要使分区表成为非分区表,请执行以下语句:

ALTER TABLE table_name REMOVE PARTITIONING;


3 mysql升级

3.1 关闭innodb

SET GLOBAL innodb_fast_shutdown = 0;     -- slow shutdown


image.webp


3.2 关闭MySQL服务

mysqladmin -u root -hlocalhost -p shutdown


image.webp


3.3 更换启动目录

在上传安装包路径下,解压mysql安装包

# tar -xvf mysql-8.0.23-linux-glibc2.12-x86_64.tar.xz


image.webp


MySQL数据库版本升级

1 背景金蝶云苍穹系统可以使用MySQL作为关系型数据库,随着MySQL的广泛应用和版本迭代,我们有时会需要对使用的MySQL环境进行升级来修复bu...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信