更多文章,欢迎关注作者公众号,欢迎一起交流。
大家好,这次大表哥分享的是 MySQL MGR 的滚动升级过程。
对于生产环境来说,升级数据库是一件十分 critcal 重要的事情,风险是十分大的! 尤其是大版本的数据库升级,作为DBA必须要谨慎对待。对于数据库的升级:
- 需要开发人员进行必要的代码改造;
- 需要测试人员进行完全的回归的功能点测试和必要的性能测试;
- 需要DBA根据自己数据库特性,进行前期分析升级的可能性以及故障点。并且一定要准备升级失败的版本降级回滚的方案。 DBA 需要根据升级的风险以及数据库的大小:选择是In-Place的升级还是Logical 的升级;
- 需要全体人员在测试环境上进行升级前的预演,及时发现潜在的问题。
简单地说, 数据库升级绝对不是简单的DBA一个人的事情,前期就需要所有相关人员的参与。
本篇文章到此其实最重要已经说完了。
下面我们看看从DBA的技术层面,如何对MySQL MGR 进行升级:
首先重要的事说三遍:
一定要阅读 官网的MySQL 升级文档!!!
一定要阅读 官网的MySQL 升级文档!!!
一定要阅读 官网的MySQL 升级文档!!!
比起市面上任何的资料,博客,公众号, 官方文档是最权威的!!! 必须要仔细阅读一遍……
MySQL :: MySQL 8.0 Reference Manual :: 2.11 Upgrading MySQL
一共14个小的章节:
1)我们先看一下mysql 版本的升级路径
mysql 5.7 -> mysql 8.0
mysql 5.6 -> mysql 5.7 -> mysql 8.0
mysql 8.0.x - mysql 8.0.y
简单地说: 是不能够跨越大版本升级的, 想从 5.6 直接升级到 8.0 是不行的:
2)需要分析一下升级到 mysql 8.0 对你的应用的影响(如果老的版本是5.7)
MySQL :: MySQL 8.0 Reference Manual :: 2.11.4 Changes in MySQL 8.0
这里列出比较重要的几点:
a)默认权限插件的改变:mysql_native_password --》 caching_sha2_password这个可能会导致应用程序连不上
b)SQL_MODE 默认值的改变: 可能会导致应用的SQL语法解析报错
3) 升级前对数据库进行全面的检查
MySQL :: MySQL 8.0 Reference Manual :: 2.11.5 Preparing Your Installation for Upgrade
官网推荐:
mysql shell 的升级检查工具 : mysql