Monitorozza az összes SQL lekérdezést a MySQL-ben
A Microsoft SQL Server rendelkezik egy Profiler nevű eszközzel, amely segítségével minden SQL lekérdezést nyomon követhet az adatbázisba. Ez rendkívül hasznos a programozók és az adatbázis-adminisztrátorok számára az alkalmazás által generált pontos lekérdezések elhárításához.
Miután a MySQL-t gyakran használta, ez volt az egyik első dolog, amit meg akartam találni. Hogyan láthatná a WordPress vagy a phpBB által generált tényleges SQL kódot?
Az első dolog, amit meg kell tennünk, a lekérdezések naplózása a MySQL-ben. Figyelmeztetni kell, hogy ezt csak a fejlesztés során kell elvégezni… tényleg lassítja a dolgokat, hogy minden egyes lekérdezést egy fájlba naplózzon.
Keresse meg és nyissa meg a MySQL konfigurációs fájlt, általában az /etc/mysql/my.cnf fájlt az Ubuntu-on. Keresse meg a „Naplózás és replikáció” című részt
#
# * Naplózás és replikáció
#
# Mindkét helyet a cronjob elforgatja.
# Legyen tudatában annak, hogy ez a naplótípus teljesítménygyilkos.log = /var/log/mysql/mysql.log
Csak hagyja ki a „napló” változót a naplózás bekapcsolásához. Indítsa újra a MySQL-t ezzel a paranccsal:
sudo /etc/init.d/mysql újraindul
Most már készen állunk arra, hogy elkezdjük nyomon követni a lekérdezéseket. Nyisson meg egy új terminált, és futtassa ezt a parancsot a naplófájl görgetéséhez, szükség esetén az útvonal beállításához.
far -f /var/log/mysql/mysql.log
Most futtassa az alkalmazást. Látni fogja, hogy az adatbázis lekérdezések a terminálablakban indulnak. (győződjön meg róla, hogy a terminálon görgetés és történelem engedélyezve van)
Lenyűgözött, a phpbb3 meglehetősen szűk, optimalizált SQL kóddal rendelkezik. A WordPress viszont nagyon kevéssé hatékony.