天天看點

MySQL運作狀态中文詳解

優化Mysql少不了要檢視狀态值,我們可以通過查詢mysql運作的狀态來具體的優化mysql。

下面是mysql狀态的中檔案解釋說明。

狀态名

作用域

詳細解釋

Aborted_clients

Global

由于用戶端沒有正确關閉連接配接導緻用戶端終止而中斷的連接配接數

Aborted_connects

試圖連接配接到MySQL伺服器而失敗的連接配接數

Binlog_cache_disk_use

使用臨時二進制日志緩存但超過binlog_cache_size值并使用臨時檔案來儲存事務中的語句的事務數量

Binlog_cache_use

使用臨時二進制日志緩存的事務數量

Bytes_received

Both

從所有用戶端接收到的位元組數。

Bytes_sent

發送給所有用戶端的位元組數。

com*

各種資料庫操作的數量

Compression

Session

用戶端與伺服器之間隻否啟用壓縮協定

Connections

試圖連接配接到(不管是否成功)MySQL伺服器的連接配接數

Created_tmp_disk_tables

伺服器執行語句時在硬碟上自動建立的臨時表的數量

Created_tmp_files

mysqld已經建立的臨時檔案的數量

Created_tmp_tables

伺服器執行語句時自動建立的記憶體中的臨時表的數量。如果Created_tmp_disk_tables較大,你可能要增加tmp_table_size值使臨時 表基于記憶體而不基于硬碟

Delayed_errors

用INSERT DELAYED寫的出現錯誤的行數(可能為duplicate key)。

Delayed_insert_threads

使用的INSERT DELAYED處理器線程數。

Delayed_writes

寫入的INSERT DELAYED行數

Flush_commands

執行的FLUSH語句數。

Handler_commit

内部送出語句數

Handler_delete

行從表中删除的次數。

Handler_discover

MySQL伺服器可以問NDB CLUSTER存儲引擎是否知道某一名字的表。這被稱作發現。Handler_discover說明通過該方法發現的次數。

Handler_prepare

A counter for the prepare phase of two-phase commit operations.

Handler_read_first

索引中第一條被讀的次數。如果較高,它建議伺服器正執行大量全索引掃描;例如,SELECT col1 FROM foo,假定col1有索引。

Handler_read_key

根據鍵讀一行的請求數。如果較高,說明查詢和表的索引正确。

Handler_read_next

按照鍵順序讀下一行的請求數。如果你用範圍限制或如果執行索引掃描來查詢索引列,該值增加。

Handler_read_prev

按照鍵順序讀前一行的請求數。該讀方法主要用于優化ORDER BY … DESC。

Handler_read_rnd

根據固定位置讀一行的請求數。如果你正執行大量查詢并需要對結果進行排序該值較高。你可能使用了大量需要MySQL掃描整個表的查詢或你的連接配接沒有正确使用鍵。

Handler_read_rnd_next

在資料檔案中讀下一行的請求數。如果你正進行大量的表掃描,該值較高。通常說明你的表索引不正确或寫入的查詢沒有利用索引。

Handler_rollback

内部ROLLBACK語句的數量。

Handler_savepoint

在一個存儲引擎放置一個儲存點的請求數量。

Handler_savepoint_rollback

在一個存儲引擎的要求復原到一個儲存點數目。

Handler_update

在表内更新一行的請求數。

Handler_write

在表内插入一行的請求數。

Innodb_buffer_pool_pages_data

包含資料的頁數(髒或幹淨)。

Innodb_buffer_pool_pages_dirty

目前的髒頁數。

Innodb_buffer_pool_pages_flushed

要求清空的緩沖池頁數

Innodb_buffer_pool_pages_free

空頁數。

Innodb_buffer_pool_pages_latched

在InnoDB緩沖池中鎖定的頁數。這是目前正讀或寫或由于其它原因不能清空或删除的頁數。

Innodb_buffer_pool_pages_misc

忙的頁數,因為它們已經被配置設定優先用作管理,例如行鎖定或适用的哈希索引。該值還可以計算為Innodb_buffer_pool_pages_total – Innodb_buffer_pool_pages_free – Innodb_buffer_pool_pages_data。

Innodb_buffer_pool_pages_total

緩沖池總大小(頁數)。

Innodb_buffer_pool_read_ahead_rnd

InnoDB初始化的“随機”read-aheads數。當查詢以随機順序掃描表的一大部分時發生。

Innodb_buffer_pool_read_ahead_seq

InnoDB初始化的順序read-aheads數。當InnoDB執行順序全表掃描時發生。

Innodb_buffer_pool_read_requests

InnoDB已經完成的邏輯讀請求數。

Innodb_buffer_pool_reads

不能滿足InnoDB必須單頁讀取的緩沖池中的邏輯讀數量。

Innodb_buffer_pool_wait_free

一般情況,通過背景向InnoDB緩沖池寫。但是,如果需要讀或建立頁,并且沒有幹淨的頁可用,則它還需要先等待頁面清空。該計數器對等待執行個體進行記數。如果已經适當設定緩沖池大小,該值應小。

Innodb_buffer_pool_write_requests

向InnoDB緩沖池的寫數量。

Innodb_data_fsyncs

fsync()操作數。

Innodb_data_pending_fsyncs

目前挂起的fsync()操作數。

Innodb_data_pending_reads

目前挂起的讀數。

Innodb_data_pending_writes

目前挂起的寫數。

Innodb_data_read

至此已經讀取的資料數量(位元組)。

Innodb_data_reads

資料讀總數量。

Innodb_data_writes

資料寫總數量。

Innodb_data_written

至此已經寫入的資料量(位元組)。

Innodb_dblwr_pages_written

已經執行的雙寫操作數量

Innodb_dblwr_writes

雙寫操作已經寫好的頁數

Innodb_log_waits

我們必須等待的時間,因為日志緩沖區太小,我們在繼續前必須先等待對它清空

Innodb_log_write_requests

日志寫請求數。

Innodb_log_writes

向日志檔案的實體寫數量。

Innodb_os_log_fsyncs

向日志檔案完成的fsync()寫數量。

Innodb_os_log_pending_fsyncs

挂起的日志檔案fsync()操作數量。

Innodb_os_log_pending_writes

挂起的日志檔案寫操作

Innodb_os_log_written

寫入日志檔案的位元組數。

Innodb_page_size

編譯的InnoDB頁大小(預設16KB)。許多值用頁來記數;頁的大小很容易轉換為位元組。

Innodb_pages_created

建立的頁數。

Innodb_pages_read

讀取的頁數。

Innodb_pages_written

寫入的頁數。

Innodb_row_lock_current_waits

目前等待的待鎖定的行數。

Innodb_row_lock_time

行鎖定花費的總時間,機關毫秒。

Innodb_row_lock_time_avg

行鎖定的平均時間,機關毫秒。

Innodb_row_lock_time_max

行鎖定的最長時間,機關毫秒。

Innodb_row_lock_waits

一行鎖定必須等待的時間數。

Innodb_rows_deleted

從InnoDB表删除的行數。

Innodb_rows_inserted

插入到InnoDB表的行數。

Innodb_rows_read

從InnoDB表讀取的行數。

Innodb_rows_updated

InnoDB表内更新的行數。

Key_blocks_not_flushed

鍵緩存内已經更改但還沒有清空到硬碟上的鍵的資料塊數量。

Key_blocks_unused

鍵緩存内未使用的塊數量。你可以使用該值來确定使用了多少鍵緩存

Key_blocks_used

鍵緩存内使用的塊數量。該值為高水準線标記,說明已經同時最多使用了多少塊。

Key_read_requests

從緩存讀鍵的資料塊的請求數。

Key_reads

從硬碟讀取鍵的資料塊的次數。如果Key_reads較大,則Key_buffer_size值可能太小。可以用Key_reads/Key_read_requests計算緩存損失率。

Key_write_requests

将鍵的資料塊寫入緩存的請求數。

Key_writes

向硬碟寫入将鍵的資料塊的實體寫操作的次數。

Last_query_cost

用查詢優化器計算的最後編譯的查詢的總成本。用于對比同一查詢的不同查詢方案的成本。預設值0表示還沒有編譯查詢。 預設值是0。Last_query_cost具有會話範圍。

Max_used_connections

伺服器啟動後已經同時使用的連接配接的最大數量。

ndb*

ndb叢集相關

Not_flushed_delayed_rows

等待寫入INSERT DELAY隊列的行數。

Open_files

打開的檔案的數目。

Open_streams

打開的流的數量(主要用于記錄)。

Open_table_definitions

緩存的.frm檔案數量

Open_tables

目前打開的表的數量。

Opened_files

檔案打開的數量。不包括諸如套接字或管道其他類型的檔案。 也不包括存儲引擎用來做自己的内部功能的檔案。

Opened_table_definitions

已經緩存的.frm檔案數量

Opened_tables

已經打開的表的數量。如果Opened_tables較大,table_cache 值可能太小。

Prepared_stmt_count

目前的預處理語句的數量。 (最大數為系統變量: max_prepared_stmt_count)

Qcache_free_blocks

查詢緩存内自由記憶體塊的數量。

Qcache_free_memory

用于查詢緩存的自由記憶體的數量。

Qcache_hits

查詢緩存被通路的次數。

Qcache_inserts

加入到緩存的查詢數量。

Qcache_lowmem_prunes

由于記憶體較少從緩存删除的查詢數量。

Qcache_not_cached

非緩存查詢數(不可緩存,或由于query_cache_type設定值未緩存)。

Qcache_queries_in_cache

登記到緩存内的查詢的數量。

Qcache_total_blocks

查詢緩存内的總塊數。

Queries

伺服器執行的請求個數,包含存儲過程中的請求。

Questions

已經發送給伺服器的查詢的個數。

Rpl_status

失敗安全複制狀态(還未使用)。

Select_full_join

沒有使用索引的聯接的數量。如果該值不為0,你應仔細檢查表的索引

Select_full_range_join

在引用的表中使用範圍搜尋的聯接的數量。

Select_range

在第一個表中使用範圍的聯接的數量。一般情況不是關鍵問題,即使該值相當大。

Select_range_check

在每一行資料後對鍵值進行檢查的不帶鍵值的聯接的數量。如果不為0,你應仔細檢查表的索引。

Select_scan

對第一個表進行完全掃描的聯接的數量。

Slave_heartbeat_period

複制的心跳間隔

Slave_open_temp_tables

從伺服器打開的臨時表數量

Slave_received_heartbeats

從伺服器心跳數

Slave_retried_transactions

本次啟動以來從伺服器複制線程重試次數

Slave_running

如果該伺服器是連接配接到主伺服器的從伺服器,則該值為ON。

Slow_launch_threads

建立時間超過slow_launch_time秒的線程數。

Slow_queries

查詢時間超過long_query_time秒的查詢的個數。

Sort_merge_passes

排序算法已經執行的合并的數量。如果這個變量值較大,應考慮增加sort_buffer_size系統變量的值。

Sort_range

在範圍内執行的排序的數量。

Sort_rows

已經排序的行數。

Sort_scan

通過掃描表完成的排序的數量。

ssl*

ssl連接配接相關

Table_locks_immediate

立即獲得的表的鎖的次數。

Table_locks_waited

不能立即獲得的表的鎖的次數。如果該值較高,并且有性能問題,你應首先優化查詢,然後拆分表或使用複制。

Threads_cached

線程緩存内的線程的數量。

Threads_connected

目前打開的連接配接的數量。

Threads_created

建立用來處理連接配接的線程數。如果Threads_created較大,你可能要增加thread_cache_size值。緩存通路率的計算方法Threads_created/Connections。

Threads_running

激活的(非睡眠狀态)線程數。

Uptime

伺服器已經運作的時間(以秒為機關)。

Uptime_since_flush_status

最近一次使用FLUSH STATUS 的時間(以秒為

本文轉自 hb_fukua 51CTO部落格,原文連結:http://blog.51cto.com/2804976/988651