mysql57升级80前置检查工具

治疗白癜风出名医院 https://wapyyk.39.net/bj/zhuanke/89ac7.html

MySQL5.7升级8.0,前置检查必不可少,通过前置检查,可以排除升级过程中的绝大部分问题,降低升级失败的概率,将问题暴露在升级之前。

MySQLShell工具提供了5.7升级8.0的前置检查功能,它能够检查一系列的兼容性问题,比如命名冲突、sql_mode、移除的系统变量和函数等等。这个工具只检查问题,并不会修复问题,如果检查确实存在兼容性问题,那么还需要人为介入进行修复。

下面通过一个实例,演示该工具如何使用,演示的MySQL版本为5.7.19,MySQLShell版本为8.0.16。

安装mysql-shell:

yuminstall-ymysql-shell.x86_64

或者直接下载解压,即可使用:

mysql-shell-8.0.16-linux-glibc2.12-x86-64bit.tar.gz

执行升级前置检查:

mysqlsh-h.0.0.1-uadmin-p-eutil.checkForServerUpgrade();

检查结果有2个警告,分别是字符集utf8mb3和caching_sha2_password认证插件。MySQL8.0推荐使用utf8mb4,密码认证如果想要兼容5.7,需要加上

default_authentication_plugin=mysql_native_password。

checkForServerUpgrade()函数加上参数:

util.checkForServerUpgrade(admin

.0.0.1:,{password:,targetVersion:8.0.16,configPath:/etc/my.cnf});

加上参数后,可以指定目标版本和配置文件my.cnf,从执行结果看,出现3个错误,12个警告。

3个错误是配置文件中的3个被移除的参数:

internal_tmp_disk_storage_engine-issetandwillberemovedquery_cache_size-issetandwillberemovedquery_cache_type-issetandwillberemoved具体的检查结果如下:

总结:

使用MySQLShell工具,使得MySQL5.7升级8.0的前置检查变得更加简单,只需一个命令,就能发现几乎所有不兼容的问题,提高了升级的成功率,减少了升级后再出现问题的概率。




转载请注明:http://www.aierlanlan.com/rzdk/3661.html

  • 上一篇文章:
  •   
  • 下一篇文章: