Kritiškiausias šios komandos yra būsenos stulpelis, o mysql išvardytos būsenos daugiausia yra šios:
Tikrinamoji lentelė Duomenų lapo tikrinimas (tai vyksta automatiškai). Uždarymo stalai Lentelėje modifikuoti duomenys išvalomi į diską, o panaudota lentelė uždaroma. Tai greita operacija, jei ne, turėtumėte patikrinti, ar disko vieta pilna, ar diskas yra apkrautas. Prisijungti Replikacijos verginis serveris jungiasi prie pirminio serverio. Kopijavimas į tmp lentelę diske Kadangi laikinas rezultatų rinkinys yra didesnis nei tmp_table_size, laikinoji lentelė konvertuojama iš atminties į disko saugyklą, kad būtų taupoma atmintis. Kuriama tmp lentelė Kuriama laikina lentelė kai kuriems užklausos rezultatams laikyti. Naikinimas iš pagrindinės lentelės Serveris atlieka pirmąją kelių lentelių naikinimo dalį ir ką tik panaikino pirmąją lentelę. Naikinimas iš nuorodų lentelių Serveris atlieka antrąją kelių lentelių naikinimo dalį, t. y. ištrina įrašus iš kitų lentelių. Skalavimo stalai Atliekant FLUSH TABLES, laukiant, kol kitos gijos uždarys duomenų lentelę. Nužudytas Jei nužudymo užklausa siunčiama į giją, gija patikrins nužudymo vėliavėlę ir atsisakys kitos nužudymo užklausos. MySQL tikrina, ar kiekvienoje pagrindinėje kilpoje nėra nužudymo vėliavėlių, nors kai kuriais atvejais gija gali mirti trumpam laikui. Jei gija užrakinta kita gija, užmušimo užklausa įsigalios iš karto, kai užraktas bus atleistas. Užrakinta Užrakinta kitų užklausų. Duomenų siuntimas SELECT užklausos įrašas apdorojamas, kol rezultatai siunčiami klientui. Rūšiavimas grupei Rūšiavimas GROUP BY. Rūšiavimas pagal užsakymą Rūšiavimas atliekamas ORDER BY. Atidaromi stalai Šis procesas turėtų būti greitas, nebent trukdo kiti veiksniai. Pavyzdžiui, duomenų lentelės negali atidaryti kita gija, kol nebus įvykdytas sakinys ALTER TABLE arba LOCK TABLE. Bandoma atidaryti stalą. Dublikatų šalinimas Vykdoma užklausa SELECT DISTINCT, bet MySQL negali optimizuoti pasikartojančių įrašų ankstesniame etape. Todėl "MySQL" turi dar kartą pašalinti pasikartojančius įrašus prieš siunčiant rezultatus klientui. Iš naujo atidaryti lentelę Ant stalo gaunamas užraktas, tačiau jį reikia modifikuoti pakeitus stalo struktūrą. Jau atleido užraktą, uždarė duomenų lapą ir bando iš naujo atidaryti duomenų lentelę. Remontas rūšiuojant Taisymo instrukcija yra rūšiavimas, kad būtų sukurtas indeksas. Remontas naudojant klavišų talpyklą Taisymo direktyva naudoja indekso talpyklą, kad po vieną sukurtų naujus indeksus. Tai bus lėčiau nei Remontas rūšiuojant. Ieškoma naujinimų eilučių Tinkami įrašai nustatomi atnaujinimui. Tai turi būti padaryta prieš UPDATE modifikuojant atitinkamą įrašą. Miegas Laukiama, kol klientas atsiųs naują užklausą. Sistemos užraktas Laukiama, kol gausite išorinį sistemos užraktą. Jei tuo pačiu metu neveikia mysqld serveriai, prašantys tos pačios lentelės, išorinės sistemos užraktai gali būti uždrausti pridedant parametrą –skip-external-locking. Atnaujinimo užraktas INSERT DELAYED bando gauti užrakto lentelę naujam įrašui įterpti. Atnaujinimas Atitinkančių įrašų paieška ir jų modifikavimas. Vartotojo užraktas laukia GET_LOCK(). Laukiama staliukų Gijai buvo pranešta, kad duomenų lapo struktūra buvo pakeista ir ją reikia atidaryti iš naujo, kad gautumėte naują struktūrą. Tada, norėdami iš naujo atidaryti duomenų lentelę, turite palaukti, kol visos kitos gijos uždarys lentelę. Šis pranešimas pateikiamas šiais atvejais: FLUSH TABLES tbl_name, ALTER TABLE, RENAME TABLE, REPAIR TABLE, ANALYZE TABLE arba OPTIMIZE TABLE. Laukiama apdorojimo programos įterpimo INSERT DELAYED apdorojo visus laukiančius įterpimus ir laukia naujos užklausos. Dauguma būsenų atitinka greitas operacijas, kol gija kelias sekundes išlieka toje pačioje būsenoje, gali kilti problema, kurią reikia patikrinti. |