mysql8 死锁
在 MySQL 数据库中,如果你遇到了错误信息“Unknown table 'INNODB_LOCKS' in information_schema”,这通常意味着你正在尝试访问一个不存在的表。在 MySQL 的 information_schema 数据库中,确实没有名为 INNODB_LOCKS 的表。
解释
在 MySQL 中,information_schema 数据库包含了关于所有其他数据库的元数据信息,例如数据库、表、列等。然而,information_schema 并不包含与 InnoDB 存储引擎内部锁相关的表。InnoDB 存储引擎的锁信息通常可以通过查看性能模式(Performance Schema)中的表来获取。
解决方案
-
使用 Performance Schema:
要查看 InnoDB 的锁信息,你应该使用 MySQL 的 Performance Schema。Performance Schema 是 MySQL 5.6 及更高版本中引入的,用于监控 MySQL 服务器内部运行情况的框架。你可以通过以下方式查询锁信息:
SELECT * FROM performance_schema.data_locks;
或者,如果你需要更详细的锁等待信息,可以使用:
SELECT * FROM performance_schema.data_lock_waits;
2. 启用 Performance Schema:
如果你还没有启用 Performance Schema,可以通过以下命令启用:
SET GLOBAL performance_schema = ON;
3.检查版本兼容性:
确保你的 MySQL 版本支持你想要使用的功能。你可以通过以下命令检查 MySQL 的版本:
SELECT VERSION();
然后根据返回的版本号确认你的 MySQL 是否支持 Performance Schema。
个人学习笔记,记录日常学习,便于查阅及加深,仅为方便个人使用。

浙公网安备 33010602011771号