19
如何確定給定查詢使用的隔離級別?在執行查詢(由第三方應用程序)後,我想知道使用了哪個隔離級別(例如,未提交讀取)。查看mysql中查詢的隔離級別
要清楚,我目前正在使用針對mysql 5.1運行的EF4的應用程序。我嘗試測試不同的編碼模式以更改特定EF4查詢的隔離級別。我需要能夠測試並確保正確設置隔離級別。
如何確定給定查詢使用的隔離級別?在執行查詢(由第三方應用程序)後,我想知道使用了哪個隔離級別(例如,未提交讀取)。查看mysql中查詢的隔離級別
要清楚,我目前正在使用針對mysql 5.1運行的EF4的應用程序。我嘗試測試不同的編碼模式以更改特定EF4查詢的隔離級別。我需要能夠測試並確保正確設置隔離級別。
SHOW VARIABLES LIKE 'tx_isolation';
,或者如果你有MySQL的5.1+
SELECT * FROM information_schema.session_variables
WHERE variable_name = 'tx_isolation';
如果你想知道什麼服務器已在全球配置,上述更改爲以下:
SHOW GLOBAL VARIABLES LIKE 'tx_isolation';
,或者如果您有MySQL 5.1+
SELECT * FROM information_schema.global_variables
WHERE variable_name = 'tx_isolation';
如果你想查詢顯示正在使用的事務隔離,運行此:
SELECT variable_value IsolationLevel
FROM information_schema.session_variables
WHERE variable_name = 'tx_isolation';**
免責聲明:我不知道EF4
如果你被允許嵌入子查詢有關的SQL由EF4運行,您可能必須將此查詢作爲子查詢嵌入(或嵌入查詢作爲子查詢),並顯示變量IsolationLevel以及實際查詢的結果。
如何將查詢結果映射到具有該隔離級別的實際查詢? – manu08 2011-03-18 03:28:14
在啓動相同數據庫連接內的實際查詢之前運行此查詢 – RolandoMySQLDBA 2011-03-18 03:32:33
第三方應用程序正在運行我試圖測試的查詢。所以我不能在同一個數據庫連接中這樣做。 – manu08 2011-03-18 03:33:48