为什么升级到MySQL8.0
1)基于安全考虑
2)基于性能和 稳定性考虑:
mgr复制 ,并行复制writeset 等功能,性能提升
3)新的功能:
Hash join ,窗口函数,DDL即时,joson 支持
4)原始环境中版本太多,统一版本。8.0版本基本已到稳定期。可以大量投入生产环境中
升级之前需要了解
1)数据库字典升级
schema,mysql,information_schema,performance_schema,sys
比如:密码测试 mysql_native_password → caching_sha2_password
2)关键词是不是兼容
https://dev.mysql.com/doc/refman/8.0/en/keywords.html
关键词 added in查询
3)SQL是不是兼容
Group by处理上的不兼容,触发器,存储过程
5.6 可以跑select id,count(*)from group by name;
5.7,8.0是不是允许的 sql_mode控制
4)数据文件存储格式是不是可以直接升级
Perconal 和 mysql 存储引擎一直,可以完全兼容
5)现有应用的兼容性是否满足
自定义函数,一些不规范的SQL语句等等
6)密码策略
What Is New in MySQL 8.0
作为DBA需要基本了解8.0的一些功能https://dev.mysql.com/doc/refman/8.0/en/mysql-nutshell.htm