If-Koubou

Seuraa kaikkia SQL-kyselyjä MySQL: ssä

Seuraa kaikkia SQL-kyselyjä MySQL: ssä (Miten)

Microsoftin SQL Serverilla on Profiler-työkalu, jonka avulla voit seurata jokaista SQL-kyselyä, joka osuu tietokantaan. Tämä on erittäin hyödyllistä ohjelmoijille ja tietokannan ylläpitäjille vianmäärityksessä sovelluksen luomien täsmällisten kyselyiden avulla.

Kun vaihdettiin MySQL: n käyttämiseen usein, tämä oli yksi ensimmäisistä asioista, jotka halusin selvittää. Miten muuten näet WordPressin tai phpBB: n generoiman todellisen SQL-koodin?

Ensimmäinen asia, mitä meidän on tehtävä, on käynnistää kyselyiden kirjaaminen MySQL: ssä. Varoitetaan, että tämä olisi tehtävä vain kehityksessä ... se hidastaa asioita alaspäin kirjautumaan jokaiseen kyselyyn tiedostoon.

Etsi ja avaa MySQL-määritystiedosto, yleensä /etc/mysql/my.cnf Ubuntussa. Etsi osio, jossa kerrotaan kirjautumisesta ja jäljentämisestä.

#
# * Kirjaus ja replikointi
#
# Molempia sijainteja pyörittää cronjob.
# Huomioi, että tämä lokityyppi on tehokas tappaja.

log = /var/log/mysql/mysql.log

Vain kommentoimatta log-muuttujaa kirjautumisen käynnistämiseksi. Käynnistä MySQL uudelleen tällä komennolla:

sudo /etc/init.d/mysql uudelleenkäynnistys

Nyt olemme valmiita aloittamaan kyselyiden tarkkailun sisään. Avaa uusi päätelaite ja avaa tämä komento vierittääksesi lokitiedostoa ja säädä tarvittaessa polku.

tail -f /var/log/mysql/mysql.log

Käynnistä sovelluksesi. Tietokantahakemukset alkavat lentää pääteikkunassa. (varmista, että päätelaitteessa on vieritys ja historia käytössä)

Olen vaikuttunut siitä, phpbb3: lla on melko tiukka, optimoitu SQL-koodi. WordPress on toisaalta erittäin tehoton.