摘要:
執行show status指令後将會列出300個關于mysql狀态的參數,我們常用的也就那麼幾個。 列舉了一些常用指令代表的含義: Aborted_clients 由于客戶沒有正确關閉連接配接已經死掉,已經放棄的連接配接數量. Aborted_connects 嘗試已經失敗的MySQL伺服器的連接配接的次數. Connections 試圖連接配接MySQL伺服器的次數. Creat
執行show status指令後将會列出300個關于mysql狀态的參數,我們常用的也就那麼幾個。
列舉了一些常用指令代表的含義:
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 伺服器工作了多少秒.
下面列出幾個常用的指令
1. QPS(每秒Query量)
QPS = Questions(or Queries) / seconds
mysql > show global status like 'Question%';
2. TPS(每秒事務量)
TPS = (Com_commit + Com_rollback) / seconds
mysql > show global status like 'Com_commit';
mysql > show global status like 'Com_rollback';
3. key Buffer 命中率
mysql>show global status like 'key%';
key_buffer_read_hits = (1-key_reads / key_read_requests) * 100%
key_buffer_write_hits = (1-key_writes / key_write_requests) * 100%
4. InnoDB Buffer命中率
mysql> show status like 'innodb_buffer_pool_read%';
innodb_buffer_read_hits = (1 - innodb_buffer_pool_reads / innodb_buffer_pool_read_requests) * 100%
5. Query Cache命中率
mysql> show status like 'Qcache%';
Query_cache_hits = (Qcahce_hits / (Qcache_hits + Qcache_inserts )) * 100%;
6. Table Cache狀态量
mysql> show global status like 'open%';
比較 open_tables 與 opend_tables 值
7. Thread Cache 命中率
mysql> show global status like 'Thread%';
mysql> show global status like 'Connections';
Thread_cache_hits = (1 - Threads_created / connections ) * 100%
8. 鎖定狀态
mysql> show global status like '%lock%';
Table_locks_waited/Table_locks_immediate=0.3% 如果這個比值比較大的話,說明表鎖造成的阻塞比較嚴重
Innodb_row_lock_waits innodb行鎖,太大可能是間隙鎖造成的
9. 複制延時量
mysql > show slave status
檢視延時時間
10. Tmp Table 狀況(臨時表狀況)
mysql > show status like 'Create_tmp%';
Created_tmp_disk_tables/Created_tmp_tables比值最好不要超過10%,如果Created_tmp_tables值比較大,
可能是排序句子過多或者是連接配接句子不夠優化
11. Binlog Cache 使用狀況
mysql > show status like 'Binlog_cache%';
如果Binlog_cache_disk_use值不為0 ,可能需要調大 binlog_cache_size大小
12. Innodb_log_waits 量
mysql > show status like 'innodb_log_waits';
Innodb_log_waits值不等于0的話,表明 innodb log buffer 因為空間不足而等待