前 言
本文是由爱可生运维团队出品的「MySQL专栏」系列文章,内容来自于运维团队一线实战经验,涵盖MySQL各种特性的实践,优化案例,数据库架构,HA,监控以及故障分析,有扫雷功效。
有深度的MySQL开源社区持续运营维护的小目标:
每周至少推送一篇高质量技术文章
每月研发团队发布开源组件新版
每年1024开源一款优质开源工具
2019年至少25场社区活动
欢迎大家持续关注~
引言
近期项目进行MySQL 5.7.21到MySQL 8.0.13的升级测试,采用逻辑升级,配置文件来自于生产环境。在初始化MySQL 8.0时,初始化命令秒级完成,而数据目录却是空的,执行初始化操作的shell窗口也没有任何的报错提示。
通过翻阅官方手册发现MySQL 8.0.13中NO_AUTO_CREATE_USER这种sql_mode已经废弃,而配置文件的sql_mode有这个配置项,最终导致了实例初始化失败。为了减少升级过程中出现类似问题,因此对MySQL 5.7到8.0的升级进行部分整理,主要包括:升级对MySQL版本的要求、升级都做了哪些内容、数据库升级做了哪些步骤以及注意事项。
升级要求
MySQL 5.7升级到MySQL 8.0,要求MySQL5.7的版