Kaip parodyti veikiančius MySQL procesus

Kaip Parodyti Veikiancius Mysql Procesus



Gali būti, kad jūsų MySQL serveryje veikia daug gijų. Tarp šių gijų neaktyvios gijos gali sukelti klaidą jūsų MySQL serveryje, nebent galėsite peržiūrėti vykdomus procesus ir užmušti tuos, kurių jums šiuo metu nereikia.

MySQL yra reliacinė DBVS, kuri vartotojams siūlo įvairias parinktis, leidžiančias išvardyti vykdomus procesus. Paaiškinsime, kaip parodyti veikiančius MySQL procesus.







MySQL procesų identifikavimas

Kai savo serveryje turite MySQL duomenų bazę, kartais gali tekti patikrinti jos būseną, kad patikrintumėte jos apkrovą. Kai pastebite vėlavimus ar problemas, susijusias su įvairiomis užklausomis savo MySQL duomenų bazėje, tai rodo, kad gali būti per daug ir neveikiančių gijų.



Taigi patogu suprasti, kokios gijos sukelia problemų ir kaip galite sumažinti apkrovą. Naudodami MySQL galite naudoti įvairias parinktis, kad analizuotumėte vykdomus procesus. Aptarsime dvi parinktis, kurios padės parodyti MySQL procesus.



1 būdas: per komandą Rodyti procesų sąrašą

Kai prisijungiate prie MySQL komandinėje eilutėje, galite naudoti komandą SHOW PROCESSLIST, kad būtų rodoma informacija apie visus MySQL serverio vykdomus procesus. Kai jis vykdomas, jis suteikia serveriui įvairių jungčių momentinį vaizdą ir informaciją apie juos, pvz., būseną, laiką ir kt.





Toliau pateikiama komanda, kurią reikia vykdyti:

RODYTI PROCESŲ SĄRAŠĄ;

Atkreipkite dėmesį į įvairius išvesties stulpelius. Trumpai aptarkime kiekvieną:



  1. Id – Rodo vykdomo proceso ID. Daugelio vykdomų procesų atveju kiekvienas turi savo unikalų ID.
  2. Vartotojas – Tai reiškia vartotoją, susietą su konkrečia gija.
  3. Šeimininkas – Tai rodo pagrindinį kompiuterį, prie kurio yra prijungtas konkretus klientas. Tai konkretaus kliento, išdavusio pareiškimą, pagrindinio kompiuterio pavadinimas.
  4. DB – Jei pasirinkta tam tikros gijos duomenų bazė, ji rodoma stulpelyje DB. Jei rodoma NULL, duomenų bazė nepasirinkta.
  5. komandą – Rodo komandą, kurią vykdo gija.
  6. Laikas – Šiame stulpelyje nurodoma, kiek laiko gija yra dabartinės būsenos.
  7. valstybė – Tai parodo, kokia būsena ar įvykis yra susijęs su gija.
  8. Informacija – Rodo, koks teiginys šiuo metu vykdomas.

Šiuo atveju ankstesnė išvestis yra rezultatas, kurį gauname iš komandos SHOW PROCESSLIST. Rezultatas rodomas lentelės pavidalu. Tarkime, kad norite matyti tuos pačius rezultatus, bet vertikaliai. Vietoj to galite naudoti šią komandą:

RODYTI PROCESŲ SĄRAŠĄ\G;

Pasirinktinai į komandą įtraukite [FULL], kad nepraleistumėte jokio vykdomo proceso.

2 būdas: naudodami parinktį INFORMATION_SCHEMA.PROCESSLIST

„MySQL“ turi lentelę INFORMATION_SCHEMA.PROCESSLIST, kurioje yra visų aktyvių ryšių, nukreipiančių į jos serverį, sąrašas. Pasiekę šią lentelę, gausite išsamią informaciją apie visus tuos aktyvius ryšius, kad sužinotumėte jų pagrindinį kompiuterį, proceso ID, būseną, komandą ir pan., panašiai kaip gaunama naudojant komandą SHOW PROCESSLIST.

Štai komanda, kurią reikia vykdyti:

SELECT * FROM INFORMATION_SCHEMA.PROCESSLIST;

Vykdydami komandą gausite išvestį, panašią į toliau pateiktą, kurioje rodoma visa MySQL vykdomų procesų informacija:

Kaip nužudyti MySQL veikiančius procesus

Tarkime, kad turite problemų dėl vykdomų procesų. Galite sustabdyti bet kokį neaktyvų procesą, kad sumažintumėte serverio įkėlimo laiką ir padidintumėte efektyvumą. Pirmoji užduotis yra nustatyti konkrečios gijos ID. Pateikėme du būdus, kaip rasti bet kurios gijos ID.

Kai turėsite ID, galite vykdyti komandą „nužudyti“ naudodami šią sintaksę:

KILL ;

Kai vykdysite komandą, gausite sėkmingą išvestį, kurioje bus rodoma paveikta eilutė, o užklausa atsijungs nuo serverio. Taip užmušate MySQL procesą.

Išvada

„MySQL“ siūlo du būdus, kuriais galite rodyti vykdomus procesus. Aptarėme abi parinktis, pateiktą sintaksę ir pavyzdinę komandą, kad padėtume suprasti MySQL SHOW PROCESSLIST. Vis dėlto matėme, kaip galite nužudyti vykstantį procesą. Tikimės, kad dabar supratote, kaip veikia MySQL SHOW PROCESSLIST.