升级MySQL后须多维度验证:查实际运行版本(SELECT VERSION())、验系统表与参数、跑基础功能测试、查错误日志异常。
升级 MySQL 后,不能只看服务是否启动,必须通过多维度验证确保版本、功能、数据和兼容性全部正常。核心是“查版本、跑基础、测行为、看日志”。
AI Word
一款强大的 AI 智能内容创作平台,致力于帮助用户高效生成高质量、原创且符合 SEO 规范的各类文章。
下载
确认实际运行版本与预期一致
登录 MySQL 后执行:
SELECT VERSION();
注意不是
(显示客户端版本),也不是
(可能仍是旧二进制)。必须连接到正在运行的实例后查
,同时核对
确保平台信息匹配。
检查关键系统表和参数是否就绪
新版本常引入或废弃系统表、变量。例如升级到 8.0 后应验证:
-
SELECT COUNT(*) FROM performance_schema.table_io_waits_summary_by_table;
(确认 P_S 表结构已更新)
-
SHOW VARIABLES LIKE 'default_authentication_plugin';
(8.0 默认为 caching_sha2_pass
word
)
-
SELECT plugin, type FROMmysql.plugins WHERE plugin = 'caching_sha2_password';
(插件是否已加载)
运行最小化功能回归测试
用一个测试库快速验证常用操作不报错:
- 创建用户:
CREATE USER 'testupg'@'localhost' IDENTIFIED BY 'pwd123';
- 执行窗口函数:
SELECT AVG(salary) OVER(PARTITION BY dept) FROM emp LIMIT 1;
(5.7+ 支持)
- 查询 JSON 字段:
SELECT JSON_EXTRACT('{"a":1}', '$.a');
- 尝试 DDL 原子性操作(如 8.0+ 的
)
检查错误日志与慢查询有无异常提示
升级后立即查看错误日志(
):
- 搜索
"deprecated"
、
"removed"
、
"incompatible"
关键字
- 留意
"Failed to load plugins"
或
"Table is marked as crashed"
类警告
- 若开启慢日志,确认
行为未因版本差异意外改变(如 8.0 默认值为 0,需手动设回)
mysql --versionmysqld --versionVERSION()SELECT @@version_compile_os, @@version_compile_machine;ALTER TABLE ... RENAME COLUMNSHOW VARIABLES LIKE 'log_error';long_query_time