MySQL 鎖信息查看


事務

-- 查看當前所有事務
select * from information_schema.innodb_trx;
-- 查看正在鎖的事務
select * from information_schema.innodb_locks;
-- 查看等待鎖的事務
select * from information_schema.innodb_lock_waits;

 

-- 查看當前有那些表是打開的
show open tables;
-- In_use:有多少線程正在使用某張表
show OPEN TABLES where In_use > 0;

-- 解鎖
-- 顯示連接列表(查詢 ID)
show full processlist;
-- 結束指定(ID)連接
kill id;

-- 解鎖
UNLOCK TABLES;

show status like '%lock%';

-- 指定表加鎖
LOCK TABLES tbl_name READ;
LOCK TABLES tbl_name WRITE;
-- 所有表加鎖
FLUSH TABLES WITH READ LOCK;

 

線程

-- 查看當前連接
-- Threads_connected:打開的連接數
-- Threads_running:激活的連接數(並發數,一般遠低於connected)
-- Threads_created:表示創建過的線程數
show status like 'Threads%';

-- 如果 Threads_created 值過大的話,表明 MySQL 服務器一直在創建線程,可以適當增加 thread_cache_size 值
show variables like 'thread_cache_size';

 

連接

-- 查詢最大連接數
show variables like '%max_connections%';
-- 設置最大連接數
set global max_connections=1000;
-- 在/etc/my.cnf里面設置數據庫的最大連接數
-- [mysqld]
-- max_connections = 1000

 

其它查詢

-- 顯示連接狀態,可以把 connect 換成其它參數
show STATUS LIKE '%connect%';

-- Aborted_clients:由於客戶沒有正確關閉連接已經死掉,已經放棄的連接數量。
-- Aborted_connects:嘗試已經失敗的 MySQL 服務器的連接的次數。
-- Connections:試圖連接 MySQL 服務器的次數。
-- Created_tmp_tables:當執行語句時,已經被創造了的隱含臨時表的數量。
-- Delayed_insert_threads:正在使用的延遲插入處理器線程的數量。
-- Delayed_writes:用 INSERT:DELAYED 寫入的行數。
-- Delayed_errors:用 INSERT:DELAYED 寫入的發生某些錯誤(可能重復鍵值)的行數。
-- Flush_commands:執行 FLUSH 命令的次數。
-- Handler_delete:請求從一張表中刪除行的次數。
-- Handler_read_first:請求讀入表中第一行的次數。
-- Handler_read_key:請求數字基於鍵讀行。
-- Handler_read_next:請求讀入基於一個鍵的一行的次數。
-- Handler_read_rnd:請求讀入基於一個固定位置的一行的次數。
-- Handler_update:請求更新表中一行的次數。
-- Handler_write:請求向表中插入一行的次數。
-- Key_blocks_used:用於關鍵字緩存的塊的數量。
-- Key_read_requests:請求從緩存讀入一個鍵值的次數。
-- Key_reads:從磁盤物理讀入一個鍵值的次數。
-- Key_write_requests:請求將一個關鍵字塊寫入緩存次數。
-- Key_writes:將一個鍵值塊物理寫入磁盤的次數。
-- Max_used_connections:同時使用的連接的最大數目。
-- Not_flushed_key_blocks:在鍵緩存中已經改變但是還沒被清空到磁盤上的鍵塊。
-- Not_flushed_delayed_rows:在 INSERT:DELAY 隊列中等待寫入的行的數量。
-- Open_tables:打開表的數量。
-- Open_files:打開文件的數量。
-- Open_streams:打開流的數量(主要用於日志記載)
-- Opened_tables:已經打開的表的數量。
-- Questions:發往服務器的查詢的數量。
-- Slow_queries:要花超過 long_query_time 時間的查詢數量。
-- Threads_connected:當前打開的連接的數量。
-- Threads_running:不在睡眠的線程數量。
-- Uptime:服務器工作了多長時間,單位秒。

 


https://dev.mysql.com/doc/refman/8.0/en/table-locking.html

https://dev.mysql.com/doc/refman/8.0/en/lock-tables.html

http://ourmysql.com/

http://blog.sina.com.cn/s/blog_63426ff90101du2a.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM