我創建一個虛擬表:MySQL的INFORMATION_SCHEMA表不填充
CREATE TABLE `lock_test` (
`name` varchar(32) NOT NULL,
PRIMARY KEY (`name`)
) ENGINE=InnoDB ;
我鎖定:
LOCK TABLE lock_test write;
然後我嘗試再次鎖定(同查詢)。第二個鎖定請求顯然只是掛在那裏。
select * from INFORMATION_SCHEMA.INNODB_LOCKS;
select * from INFORMATION_SCHEMA.INNODB_LOCK_WAITS;
都是空的(返回零結果) - 我會期望他們被填充。我有PROCESS
權限(顯示PROCESSLIST
顯示鎖定工作)。
對於這些表格,我有沒有完全錯誤的結束?信息模式插件和InnoDB引擎肯定是安裝的(通過運行SHOW PLUGINS進行檢查;)。
感謝
你有'autocommit = 1'嗎? – 2012-04-25 00:41:30
嗨 - 是的,他們肯定是承諾(我必須打開第二個連接來發出第二個LOCK命令 - 如果它沒有提交第二個LOCK會失敗)。謝謝! – 2012-04-25 01:31:22