可以使用 information_schema 查詢數(shù)據(jù)庫(kù)使用情況。information_schema 這個(gè)數(shù)據(jù)庫(kù)保存了 MySQL 服務(wù)器所有數(shù)據(jù)庫(kù)的信息伊诵。
如數(shù)據(jù)庫(kù)名丈冬,數(shù)據(jù)庫(kù)的表,表欄的數(shù)據(jù)類(lèi)型與訪問(wèn)權(quán)限等币厕。也就是說(shuō)列另,這臺(tái) MySQL 服務(wù)器上,到底有哪些數(shù)據(jù)庫(kù)旦装、各個(gè)數(shù)據(jù)庫(kù)有哪些表页衙,每張表的字段類(lèi)型是什么,各個(gè)數(shù)據(jù)庫(kù)要什么權(quán)限才能訪問(wèn)等等信息都保存在 information_schema 庫(kù)里面阴绢。
1店乐、SELECT * FROM information_schema.INNODB_TRX; – 當(dāng)前運(yùn)行的所有事務(wù)
2、SELECT * FROM information_schema.INNODB_LOCKS; – 當(dāng)前出現(xiàn)的鎖
3呻袭、SELECT * FROM information_schema.INNODB_LOCK_WAITS; – 鎖等待的對(duì)應(yīng)關(guān)系
3.1 方案一 事務(wù)信息查詢
通過(guò)SELECT * FROM information_schema.innodb_trx查詢未提交事務(wù)眨八,查到一個(gè)一直沒(méi)有提交的只讀事務(wù)(trx_state=”LOCK WAIT”),找到對(duì)應(yīng)線程左电,執(zhí)行:kill 線程ID廉侧。線程id為表中的trx_mysql_thread_id字段。