mysql 升级_MySQL版本升级之5.6到5.7--show_compatibility_56参数

概述

简单记录一下以下报错的解决办法, 仅供参考。

在涉及到mysql5.6和mysql5.7数据库时提示以下报错:

DBD::mysql::st execute failed: The 'INFORMATION_SCHEMA.GLOBAL_VARIABLES' feature is disabled; see the documentation for 'show_compatibility_56' at myawr.pl line 760.
5a67b30dae5f6df7ca81ede3cfc68d57.png

解决过程

从mysql5.7.6开始information_schema.global_status已经开始被舍弃,为了兼容性,此时需要打开show_compatibility_56

1、查看show_compatibility_56值

MySQL> show variables like '%show_compatibility_56%';

a99b9cd27c58884a4f78fdcbb5dd8edf.png

2、把show_compatibility_56打开

mysql> set global show_compatibility_56=on;mysql> show variables like '%show_compatibility_56%';
1a1816093286a6f87f42c70154406d9d.png

show_compatibility_56参数

MySQL5.6版本到5.7版本的更新包括一些不兼容的特性,在升级到5.7之前,我们需要知道这些不兼容的特性并手动更新,在其中涉及到REPAIR TABLE和USE_FRM选项的指令一定要在更新版本之前完成。

配置项更新:

1、--early-plugin-load

MySQL5.7.11,此参数的默认值为keyring_file(是一个二进制文件的插件),InnoDB表空间在初始化InnoDB之前需要此插件来加密,但是MySQL5.7.12及以后此参数默认为空,所以5.7.11升级到5.7.12后,如果已经在之前的版本中使用此插件对InnoDB表空间进行了加密,在开启服务时需要指定参数 --early-plugin-load

2、系统表

MySQL5.6中INFORMATION_SCHEMA 中存在系统变量和状态变量的表,show variables 和show status也是基于此库中的表,在5.7.6时被Performance Schema也存在这四张表,show 语句开始基于Performance Schema中的表,如果show_compatibility_56参数开启,则兼容5.6


后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注下~

137053f2e41eba162e714409c1bc23b5.gif
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值