vendredi 24 février 2012

Monitorovat všechny SQL dotazů v MySQL

Microsoft SQL Server je nástroj s názvem Profiler, který lze použít ke sledování každého SQL dotazu, který udeří do databáze. To je velmi užitečné pro programátory a správce databáze řešit přesné dotazy vytvořené aplikace.

Po přepnutí na MySQL na často, to byla jedna z prvních věcí, které jsem chtěl přijít na to, jak to udělat. Jak jinak můžete vidět aktuální SQL kód vygenerovaný WordPress a phpBB?

První věc, kterou budeme muset udělat, je zapnout záznam dotazu na MySQL. Upozorňujeme, že toto by mělo být provedeno ve vývoji ... je to opravdu zpomaluje, co se přihlásit každý dotaz do souboru.

Najít a otevřít si MySQL konfigurační soubor, obvykle / etc / mysql / my.cnf na Ubuntu. Podívejte se na část, která říká: "Přihlášení a replikace"

#
# * Záznam a replikace
#
# Oba místo dostane otočen o úlohy cronu.
# Uvědomte si, že tento typ protokolu je výkon vrah.

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

Stačí odkomentovat "log" proměnné zapnutí protokolování. Restart MySQL pomocí tohoto příkazu:

sudo / etc / init.d / mysql restart

Nyní jsme připraveni začít sledovat dotazy, jak přicházejí dovnitř Otevřete nový terminál a spusťte tento příkaz procházet log soubor, upravit cestu v případě potřeby.

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

Nyní spusťte aplikaci. Uvidíte databázové dotazy začátek létání v terminálovém okně. (Ujistěte se, že jste posouvání a historie povoleno terminálu)

Jsem ohromen, phpBB3 je velmi těsný, optimalizované SQL kód. WordPress, na druhé straně, je velmi neefektivní.

Aucun commentaire:

Enregistrer un commentaire