同时也要注意到MySQL里面习惯看到的deprecated的警告将变成真的。目前MySQL建议升级到LTS 8.4版本的MySQL. 同时一些老的管理MySQL的工具也该更新了,比如一直使用的MySQL,应该更新为mysql shell,mysqlsh,同时带来的问题还有一些命令,set password = password的命令,也将被抛弃,这说明还停留在8.0以及8.0以下版本知识的DBA,将可能会陷入尴尬。
另外针对老版本写的程序,周边的软件很可能在你升级数据库后,无法使用,这一部分是由于系统变量名称的改变,也有一部分是新的系统变量的加入老的系统变量被替代导致的,监控,分析软件出现问题,这些软件也需要同步升级,如果很不幸你是自己开发或者是开源的,那么就不好说了。
MySQL 8.0 → 8.4 重要变更汇总
|
|
|
|
|
|---|---|---|---|
|
|
tx_isolation |
|
transaction_isolation,在 my.cnf 与连接字符串中替换 |
|
|
tx_read_only |
|
transaction_read_only,全局替换 |
|
|
expire_logs_days |
|
binlog_expire_logs_seconds,如 expire_logs_days = 7 → binlog_expire_logs_seconds = 604800 |
|
|
rpl_semi_sync_master_wait_for_slave_count |
|
rpl_semi_sync_source_wait_for_replica_count |
|
|
rpl_semi_sync_master_timeout |
|
rpl_semi_sync_source_timeout |
|
|
rpl_semi_sync_master_trace_level |
|
rpl_semi_sync_source_trace_level |
|
|
rpl_semi_sync_slave_trace_level |
|
rpl_semi_sync_replica_trace_level |
|
|
group_replication_ip_whitelist |
|
group_replication_ip_allowlist |
|
|
skip_name_resolve
|
|
0 或 1 设置 |
|
|
PASSWORD() |
|
CREATE USER ... IDENTIFIED BY '...' 或 ALTER USER ... IDENTIFIED BY '...' 替代 |
|
|
CHANGE MASTER TO
START SLAVE, ... |
|
CHANGE REPLICATION SOURCE TO,START REPLICA,SHOW REPLICA STATUS |
|
|
|
|
|
|---|---|---|---|
|
|
mysql_native_password |
|
mysql.user 表,把用户迁移至 caching_sha2_password 等更安全方式 |
|
|
default_authentication_plugin |
|
default_authentication_policy,提供更灵活策略 |
|
|
FLUSH HOSTS |
|
|
|
|
--skip-grant-tables |
|
--init-file 方法进行密码恢复 |
|
|
FLOAT(M,D)
DOUBLE(M,D) |
|
FLOAT / DOUBLE,精度和格式在应用逻辑中处理 |
以下是一些根据 MySQL 更新日志或常见实践判断,可能也属于“已移除”或“已弃用”的项目,建议你核对并决定是否需要加入文档:
已移除的一些参数:
--log_slow_verbosity:MySQL 8.4 之后可能进一步简化日志参数配置
stored_program_cache_size:该参数在 8.0 中弃用,可能在 8.4 中已移除
已弃用的一些参数:
query_cache_size, query_cache_type:虽然早在 8.0 即废弃,但确认下是否仍有残余设定提示
innodb_old_blocks_time:优化相关参数,检查是否仍被警告将废弃
innodb_print_all_deadlocks:诊断参数,确认是否仍推荐迁移为新方案
随着MySQL高版本的使用的数量的公司和人减少,高版本的知识和一些内容在网上搜到的越来越少,如果要使用高版本的MySQL 可能还有更多的部分需要补充,备份,高可用的方案等等,期待一些使用高版本的个人和公司可以将这部分知识进行共享。
作者介绍
刘华阳,20年经历风霜雨打的 DBA,5年的 DBA 架构和团队管理经验,只要是数据库都喜欢学习。PostgreSQL ACE,MongoDB 狂热者,10年的 MYSQL 工作经验,现在在玩 POLARDB 与时俱进。
如果字段的最大可能长度超过255字节,那么长度值可能…
只能说作者太用心了,优秀
感谢详解
一般干个7-8年(即30岁左右),能做到年入40w-50w;有…
230721