Analyzing
線程是對MyISAM 表的統(tǒng)計(jì)信息做分析(例如, ANALYZE TABLE )。
checking permissions
線程是檢查服務(wù)器是否具有所需的權(quán)限來執(zhí)行該語句。
Checking table
線程正在執(zhí)行表檢查操作。
cleaning up
線程處理一個命令,并正準(zhǔn)備以釋放內(nèi)存和重置某些狀態(tài)變量。
closing tables
線程是改變表中的數(shù)據(jù)刷新到磁盤和關(guān)閉使用的表。 這應(yīng)該是一個快速的操作。 如果沒有,你應(yīng)該確認(rèn)你沒有一個完整的磁盤和磁盤是不是在十分繁重的情況下使用。
converting HEAP to MyISAM
線程是從轉(zhuǎn)換內(nèi)部臨時表MEMORY內(nèi)存表磁盤MyISAM表。
copy to tmp table
線程正在處理一個ALTER TABLE語句。 這種狀態(tài)發(fā)生后,與新結(jié)構(gòu)的表已創(chuàng)建,但前行復(fù)制到它。
Copying to group table
如果語句有不同的ORDER BY和GROUP BY標(biāo)準(zhǔn),按組排序的行復(fù)制到一個臨時表。
Copying to tmp table
服務(wù)器復(fù)制到內(nèi)存中的臨時表。
Copying to tmp table on disk
服務(wù)器復(fù)制到一個臨時表在磁盤上。 臨時結(jié)果集已經(jīng)變得過于龐大(見7.8.4節(jié),“MySQL如何使用內(nèi)部臨時表” )。 因此,線程從內(nèi)存中的臨時表基于磁盤的格式,以節(jié)省內(nèi)存。
Creating index
線程正在處理ALTER TABLE ... ENABLE KEYS ALTER TABLE ... ENABLE KEYS為MyISAM MyISAM表。
Creating sort index
線程正在處理一個SELECT就是使用內(nèi)部臨時表解決。
creating table
線程創(chuàng)建一個表。 這包括建立臨時表。
Creating tmp table
線程是創(chuàng)建一個臨時表在內(nèi)存或磁盤上。 如果表是在內(nèi)存中創(chuàng)建,但后來被轉(zhuǎn)換成一個磁盤上的表,在該操作的Copying to tmp table on disk在磁盤上。
deleting from main table
服務(wù)器正在執(zhí)行多表刪除的第一部分。 它只能從第一個表中刪除,并保存列和刪除從其他表(參考)偏移。
deleting from reference tables
服務(wù)器正在執(zhí)行多表刪除的第二部分,從其他表中刪除匹配的行。
discard_or_import_tablespace
線程正在處理一個ALTER TABLE ... DISCARD TABLESPACE ALTER TABLE ... DISCARD TABLESPACE或ALTER TABLE ... IMPORT TABLESPACE ALTER TABLE ... IMPORT TABLESPACE語句。
end
這發(fā)生在年底前的清理ALTER TABLE , CREATE VIEW , DELETE , INSERT , SELECT或UPDATE語句。
executing
線程已開始執(zhí)行語句。
Execution of init_command
線程正在執(zhí)行中的價(jià)值陳述init_command系統(tǒng)變量。
freeing items
線程已執(zhí)行的命令。 釋放一些在這種狀態(tài)下完成的項(xiàng)目,涉及的查詢緩存。 這種狀態(tài)通常后跟cleaning up 。
Flushing tables
線程正在執(zhí)行FLUSH TABLES ,等待所有線程關(guān)閉其表。
FULLTEXT initialization
該服務(wù)器是準(zhǔn)備執(zhí)行一個自然語言的全文檢索。
init
這發(fā)生之前的初始化ALTER TABLE , DELETE , INSERT , SELECT或UPDATE語句。 服務(wù)器在這種狀態(tài)下采取的行動包括沖洗二進(jìn)制日志中InnoDB日志,和一些查詢緩存清理操作。
對于end狀態(tài),以下操作可能會發(fā)生的事情:
更改后刪除表中的數(shù)據(jù)查詢的緩存條目
二進(jìn)制日志中寫一個事件
釋放內(nèi)存緩沖區(qū),包括為斑點(diǎn)
Killed
有人發(fā)送一個KILL線程的語句,它應(yīng)該中止在下一次檢查殺死標(biāo)志。 檢查該標(biāo)志是在每個MySQL中的主要循環(huán),但在某些情況下可能還需要很短的時間為線程死亡。 如果線程是由其他線程鎖定,殺死盡快生效的其他線程釋放它的鎖。
Locked
查詢被鎖定由另一個查詢。
logging slow query
線程正在寫一慢查詢?nèi)罩镜恼Z句。
NULL
這種狀態(tài)是用于SHOW PROCESSLIST狀態(tài)。
login
連接線程的初始狀態(tài),直到客戶端已成功通過身份驗(yàn)證。
Opening tables , Opening table
線程試圖打開一個表。 這應(yīng)該是非??斓倪^程中,除非有阻止打開。 例如,一個ALTER TABLE或LOCK TABLE語句可以防止打開一個表的語句,直到完成。 您的table_cache值足夠大,這也是值得一試。
optimizing
服務(wù)器執(zhí)行查詢的初始優(yōu)化。
preparing
這種狀態(tài)出現(xiàn)在查詢優(yōu)化過程中。
Purging old relay logs
線程是消除不必要的中繼日志文件。
query end
這種狀態(tài)發(fā)生后處理查詢,但在此freeing items的項(xiàng)目狀態(tài)。
Reading from net
服務(wù)器是閱讀從網(wǎng)絡(luò)數(shù)據(jù)包。
Removing duplicates
查詢使用SELECT DISTINCT在這樣一種方式是MySQL不能優(yōu)化掉在早期階段的不同操作。 正因?yàn)槿绱?MySQL需要一個額外的的階段,將結(jié)果發(fā)送到客戶端之前刪除所有重復(fù)行。
removing tmp table
線程是消除處理后,內(nèi)部的SELECT表SELECT語句。 如果沒有創(chuàng)建臨時表,這種狀態(tài)是不使用。
rename
線程重命名表。
rename result table
線程正在處理一個ALTER TABLE語句,創(chuàng)建新表,并重新命名它來取代原來的表。
Reopen tables
線程有一個表鎖,但注意到后鎖底層表結(jié)構(gòu)改變。 它釋放的鎖,關(guān)閉表,并試圖重新打開它。
Repair by sorting
修復(fù)代碼是使用排序創(chuàng)建索引。
Repair done
該線程已完成了一個多線程的MyISAM表。
Repair with keycache
修復(fù)代碼是使用創(chuàng)建密鑰通過關(guān)鍵緩存。 這是遠(yuǎn)遠(yuǎn)高于速度Repair by sorting進(jìn)行排序。
Rolling back
線程回滾事務(wù)。
Saving state
如修理或分析MyISAM MyISAM表操作,線程是節(jié)能的新表的狀態(tài).MYI文件頭。 國家包括行數(shù),如信息AUTO_INCREMENT計(jì)數(shù)器,以及關(guān)鍵的分布。
Searching rows for update
線程正在做第一階段前更新他們找到所有匹配的行。 這工作要做, UPDATE UPDATE正在改變,是用來尋找所涉及的行的索引。
Sending data
線程處理一個SELECT語句行,將數(shù)據(jù)發(fā)送到客戶端。 因?yàn)樵谶@個狀態(tài)發(fā)生的操作往往執(zhí)行大量的磁盤訪問(讀取),它往往是在一個給定的查詢的生命周期最長的運(yùn)行狀態(tài)。
setup
線程開始一個ALTER TABLE操作。
Sorting for group
線程是做一個分類,以GROUP BY集團(tuán)。
Sorting for order
線程是做來滿足ORDER BY排序。
Sorting index
線程排序索引的網(wǎng)頁,更高效的訪問MyISAM表的優(yōu)化操作。
Sorting result
對于SELECT語句,這是Creating sort index類似,但nontemporary表。
statistics
服務(wù)器計(jì)算統(tǒng)計(jì)數(shù)據(jù),以制定一個查詢執(zhí)行計(jì)劃。 如果一個線程處于這種狀態(tài)很長一段時間,服務(wù)器可能是磁盤綁定執(zhí)行其他工作。
System lock
該線程將要求或正在等待內(nèi)部或外部的系統(tǒng)鎖表。 如果這種狀態(tài)是造成外部鎖的請求和您不使用多個mysqld的訪問相同的MyISAM MyISAM表,你可以禁用與外部系統(tǒng)--skip-external-locking鎖定選項(xiàng)。 然而,外部鎖定是默認(rèn)禁用的,所以這個選項(xiàng)很可能不會有任何效果。 SHOW PROFILE ,這種狀態(tài)意味著線程請求鎖(不等待)。
Table lock
后的下一個線程狀態(tài)System lock鎖定。 線程已經(jīng)收購了外部鎖定,并要求內(nèi)部表鎖。
Updating
線程正在尋找要更新的行和更新他們。
updating main table
服務(wù)器正在執(zhí)行多表更新的第一部分。 它是只更新第一個表,并節(jié)省列和用于更新其他表(參考)偏移。
updating reference tables
服務(wù)器正在執(zhí)行多表更新的第二部分和更新從其他表匹配的行。
User lock
線程請求或要求與咨詢鎖等待GET_LOCK()調(diào)用。 SHOW PROFILE ,這種狀態(tài)意味著線程請求鎖(不等待)。
Waiting for release of readlock
線程正在等待另一個線程(與獲得全局讀鎖FLUSH TABLES WITH READ LOCK TABLES)被釋放。
Waiting for tables , Waiting for table
線程得到一個表的基本結(jié)構(gòu)發(fā)生了變化的通知,它需要重新打開表,以獲取新的結(jié)構(gòu)。 然而,重新打開表,它必須等到所有其他線程已經(jīng)關(guān)閉了表中的問題。
此通知發(fā)生,如果另一個線程已FLUSH TABLES或桌子上的問題下面的語句之一FLUSH TABLES tbl_name tbl_name ALTER TABLE , RENAME TABLE TABLE REPAIR TABLE TABLE ANALYZE TABLE TABLE, OPTIMIZE TABLE TABLE 。
Waiting on cond
在該線程正在等待一個條件,成為真正的一般狀態(tài)。 沒有特定的狀態(tài)信息是可用的。
Waiting to get readlock
線程已發(fā)出一個FLUSH TABLES WITH READ LOCK語句獲得全局讀鎖,并正在等待獲取鎖。
Writing to net
服務(wù)器寫一個數(shù)據(jù)包到網(wǎng)絡(luò)上。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
