| 狀態 |
含義 |
| After create |
當線程建立表(包括暫存資料表) |
| Analyzing |
線程正在分析MYISAM的key分布 |
| checking permissions |
線程正在檢查執行語句的許可權 |
| Checking table |
線程正在執行表check操作 |
| cleaning up |
線程已經處理完一個命令然後開始準備釋放記憶體和reset狀態變數 |
| closing tables |
線程把改變的表資料flush到磁碟然後關閉使用的表。這個操作應該是很快的,如果這個狀態長時間出現,要留意檢查磁碟的狀態。 |
converting HEAP to MyISAM |
把一個記憶體中的暫存資料表轉換到磁碟上的MYISAM表 |
| copy to tmp table |
線程執行alter table語句。這個狀態出現在新的表結構已經建立但資料還在拷貝到新表之前。 |
Copying to group table |
如果一個語句的group by和order by 條件不同,資料通過group by來排序然後拷貝到暫存資料表 |
| Copying to tmp table |
拷貝到記憶體中的暫存資料表 |
Copying to tmp table on disk |
如果暫存資料表過大,伺服器要把記憶體中的暫存資料表拷貝到磁碟。 |
| Creating index |
對一個MYISAM 執行ALTER TABLE ... ENABLE KEYS |
Creating sort index |
線程通過執行一個暫存資料表來執行select語句 |
| creating table |
線程正在建立表(包括暫存資料表) |
Creating tmp table |
建立暫存資料表(在記憶體或者磁碟)上,如果表一開始在記憶體中到後面太大,暫存資料表就會轉換到磁碟上,而且狀態也會變成Copying to tmp table on disk |
| deleting from main table |
伺服器正在執行一個多表delete語句的第一部分,也就是從第一張表刪除資料,並且保留行以及位移量資料以用來刪除其他表中的資料。 |
deleting from reference tables |
伺服器正在執行一個多表delete語句的二部分 |
| discard_or_import_tablespace |
線程正在執行ALTER TABLE ... DISCARD TABLESPACE或者ALTER TABLE ... IMPORT TABLESPACE 語句. |
| end |
這個狀態出現在ALTER TABLE, CREATE VIEW, DELETE,INSERT, SELECT, UPDATE語句結束之後,但在清理以前。 |
| executing |
線程開始執行一個語句 |
| Execution of init_command |
線程在init_command系統變數中執行語句 |
| freeing items |
線程已經執行命令。一些釋放 |
| Flushing tables |
這個線程執行了FLUSH TABLES,而且等待所有的線程關閉表 |
FULLTEXT initialization |
伺服器準備執行文本搜尋 |
| init |
|
| Killed |
發送了kill 語句給這個查詢。這個語句在下次檢查kill標誌的時候,這個語句就應該放棄掉 |
| Locked |
查詢被其他的查詢鎖住了 |
| logging slow query |
線程正在把慢sql寫到慢查詢log檔案中 |
| NULL |
|
| login |
直到線程授權成功以前都是這個狀態 |
| manage keys |
伺服器正在卡哭泣或者關閉表的索引 |
Opening tables, Opening table |
線程正在開啟表。這個操作是很快的,除非有其他原因阻止了開啟操作,例如ALTER TABLE LOCK TABLE |
| optimizing |
伺服器進行中一個查詢的初始階段最佳化 |
| preparing |
進行中查詢最佳化 |
| Purging old relay logs |
線程刪除不需要的relay log檔案 |
| query end |
這個狀態出現在處理完以後但在凍結item之前 |
| Reading from net |
伺服器從網路讀取包 |
Removing duplicates |
查詢使用了select distinct。mysq在發送資料到用戶端之前需要一個額外的過程來重複資料刪除的行 |
| removing tmp table |
在執行了select語句以後,線程正在刪除內部的暫存資料表 |
| rename |
線程正在重新命名表 |
| rename result table |
線程正在執行一個alter table語句,而且已經建立了新表,對新表重新命名來替換原始表。 |
| Reopen tables |
線程擷取了一個表的鎖。由於它已經得知它依賴的表結構已經發生了變化。線程需要釋放鎖、關閉表、然後嘗試重新開啟他。 |
| Repair by sorting |
修複代碼通過排序來建立索引。 |
| Repair done |
線程完成了對一個myisam表的多線程修複。 |
| Repair with keycache |
修複代碼正在通過key的緩衝建立key。 |
| Rolling back |
線程正在復原事物。 |
| Saving state |
myisam的analysis和repair操作中,線程會把表的一些資訊例如表的行數、AUTO_INCREMENT的計數器以及key的分布都儲存到.MYI檔案的頭部 |
| Searching rows for update |
語句執行的第一個階段,找到所有滿足條件的行記錄 |
| Sending data |
線程在讀取和處理SELECT語句,發送資料到用戶端。由於語句需要大量的磁碟訪問,這個狀態會在語句的整個生命週期中佔據最長的一個狀態。 |
| setup |
線程開始進行ALTER TABLE 語句 |
| Sorting for group |
線程正在為group by 執行排序 |
| Sorting for order |
線程正在為order by 執行排序 |
| Sorting index |
在myisam表的最佳化操作中,進行索引頁的排序以便獲得更好的訪問效能。 |
| Sorting result |
對結果進行排序 |
| statistics |
伺服器正在計算統計資料從而來產生一個執行計畫。如果一個線程保留這個狀態很長的時間,意味著伺服器在執行其他的磁碟相關的工作。 |
| System lock |
線程正在請求和擷取一個內部和外部鎖。如果有這個狀態 |
| Table lock |
System Lock後的另一個線程狀態。線程已經擷取了一個外部鎖,然後接下來要去擷取一個內部表鎖。 |
| update |
線程已經準備好去更新 |
| Updating |
現在正在找或者正在更新行 |
updating main table |
伺服器正在執行一個多表update語句,正在更新第一張表,儲存行和位移量以用來更新其他表。 |
updating reference tables |
伺服器正在執行一個多表update語句的第二部分,正在從其他表更新行 |
| User lock |
請求或者等待擷取一個鎖 |
User sleep |
線程sleep |
Waiting for release of readlock |
等待一個全域的讀鎖 |
Waiting for tables, Waiting for table |
線程獲得提示依賴的表結構發生了改變,線程需要重新開啟表來擷取新的結構。但是,重新開啟表是需要等待其他的線程關閉表。 |
| Waiting on cond |
線程正在等條件變成true |
| Waiting to get readlock |
線程用FLUSH TABLES WITH READ LOCK語句,所以要獲得一個全域的讀鎖,這個狀態表示正在等這個鎖。 |
Writing to net |
伺服器把包寫到網路 |