當前位置:首頁 » 操作系統 » 狀態資料庫表

狀態資料庫表

發布時間: 2024-10-20 11:21:31

A. 怎麼知道資料庫表已經鎖表了

可直接在mysql命令行執行:show engine innodb statusG;

查看造成死鎖的sql語句,分析索引情況,然後優化sql然後show processlist;

show status like 『%lock%』

show OPEN TABLES where In_use > 0; 這個語句記錄當前鎖表狀態

另外可以打開慢查詢日誌,linux下打開需在my.cnf的[mysqld]裡面加上以下內容:

slow_query_log=TRUE(有些mysql版本是ON)

slow_query_log_file=/usr/local/mysql/slow_query_log.txt

long_query_time=3

select *from v$locked_object:可以獲得被鎖的對象的object_id及產生鎖的會話sid。通過查詢結果中的object_id,可以查詢到具體被鎖的對象。

(1)狀態資料庫表擴展閱讀:

注意事項

也可以直接把這幾個視圖和表關聯起來,在查詢結果中直接得到「alter system kill session 'sid, serial#'」這樣的方便的kill sessoin命令。

如果執行kill session命令後,鎖並沒有除掉,session依然存在。這種情況,通過select spid from v$process where addr in(select paddr from v$session where sid = &sid)查詢到oracle會話在伺服器上的pid,然後登陸到伺服器上,執行kill -9 pid這樣就能殺掉進程解鎖了。

B. 查詢mysql 哪些表正在被鎖狀態

可直接在mysql命令行執行:show engine innodb statusG;

查看造成死鎖的sql語句,分析索引情況,然後優化sql然後show processlist;

show status like 『%lock%』

show OPEN TABLES where In_use > 0; 這個語句記錄當前鎖表狀態

另外可以打開慢查詢日誌,linux下打開需在my.cnf的[mysqld]裡面加上以下內容:

slow_query_log=TRUE(有些mysql版本是ON)

slow_query_log_file=/usr/local/mysql/slow_query_log.txt

long_query_time=3

(2)狀態資料庫表擴展閱讀:

MySQL鎖定狀態查看命令

Checking table:正在檢查數據表(這是自動的)。

Closing tables:正在將表中修改的數據刷新到磁碟中,同時正在關閉已經用完的表。這是一個很快的操作,如果不是這樣的話,就應該確認磁碟空間是否已經滿了或者磁碟是否正處於重負中。

Connect Out:復制從伺服器正在連接主伺服器。

Copying to tmp table on disk:由於臨時結果集大於tmp_table_size,正在將臨時表從內存存儲轉為磁碟存儲以此節省內存。

Creating tmp table:正在創建臨時表以存放部分查詢結果。

deleting from main table:伺服器正在執行多表刪除中的第一部分,剛刪除第一個表。

熱點內容
android作用 發布:2024-10-20 15:50:35 瀏覽:551
ftp建立連接的埠 發布:2024-10-20 15:37:32 瀏覽:17
redis設置緩存時間設置 發布:2024-10-20 15:22:08 瀏覽:990
androidphone進程 發布:2024-10-20 15:17:33 瀏覽:904
壓縮機uvw接線 發布:2024-10-20 15:03:17 瀏覽:28
編譯程序就是翻譯程序嗎 發布:2024-10-20 15:00:59 瀏覽:723
如何列印整個文件夾 發布:2024-10-20 14:50:43 瀏覽:3
崩壞三安卓服和桌面服哪個人多 發布:2024-10-20 14:47:45 瀏覽:307
中間件配置策略怎麼看 發布:2024-10-20 14:46:05 瀏覽:109
陪讀性解壓 發布:2024-10-20 14:45:25 瀏覽:232