-- 当前运行的所有事务 SELECT * FROM information_schema.INNODB_TRX; -- 当前出现的锁 SELECT * FROM information_schema.INNODB_LOCKs; -- 锁等待的对应关系 SELECT * FROM information_schema.INNODB_LOCK_waits; -- 每个MySql线程的用户,地址以及操作的db等其他信息。 SELECT * FROM information_schema.PROCESSLIST; -- 线程的信息 包括执行的sql信息(SQL_TEXT) select * from performance_schema.events_statements_current ##数据库死锁解决方案1 --查看造成死锁服务器日志## -- 找到状态为RUNNING的记录 拿到线程id:trx_mysql_thread_id SELECT * FROM information_schema.INNODB_TRX; -- 查询information_schema.processlist表 找到执行事务的客户端请求的SQL线程 拿到host select * from information_schema.PROCESSLIST WHERE ID = 'trx_mysql_thread_id'; -- 根据端口和ip 到服务器查看相关的应用和日志 # netstat -nlatp | grep 23452 # ps -eaf | grep 12059 ##数据库死锁解决方案2 -- 查看造成死锁的SQL信息## -- 找到状态为RUNNING的记录 拿到线程id:trx_mysql_thread_id SELECT * FROM information_schema.INNODB_TRX; -- 根据线程id获取所有线程信息 select * from performance_schema.threads where PROCESSLIST_ID = 'trx_mysql_thread_id' -- 根据线程id 从当前事件语句中获取到具体的执行sql select * from performance_schema.events_statements_curren where THREAD_ID in (select THREAD_ID from performance_schema.threads where PROCESSLIST_ID='trx_mysql_thread_id')
标签:information,--,数据库,死锁,线程,id,schema From: https://www.cnblogs.com/axibug/p/16740910.html