Skip to main content

Pratite sve SQL upite u MySQL-u

Pratite sve SQL upite u MySQL-u

Geoffrey Carr

Microsoftov SQL Server ima alat nazvan Profiler koji možete koristiti za praćenje svakog SQL upita koji udara u bazu podataka. Ovo je iznimno korisno programerima kao i administratorima baza podataka za rješavanje točnih upita koje generira aplikacija.

Nakon što se često upotrebljavala MySQL, ovo je bila jedna od prvih stvari za koje sam htio saznati kako to učiniti. Kako još možete vidjeti stvarni SQL kod koji generira WordPress ili phpBB?

Prva stvar koju moramo učiniti jest uključiti prijavljivanje upita u MySQL. Budite upozoreni da to treba učiniti samo u razvoju ... stvarno usporava stvari kako bi prijavio svaki upit u datoteku.

Pronađite i otvorite MySQL konfiguracijsku datoteku, obično /etc/mysql/my.cnf na Ubuntu. Potražite odjeljak koji kaže "Zapisivanje i replikacija"

## * Logging and Replication## Both location gets rotated by the cronjob.# Be aware that this log type is a performance killer.

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

Jednostavno odjavite varijablu "log" kako biste uključili prijavljivanje. Ponovno pokrenite MySQL pomoću ove naredbe:

sudo /etc/init.d/mysql restart

Sada smo spremni za početak praćenja upita prilikom dolaska. Otvorite novi terminal i pokrenite ovu naredbu da biste pomicali datoteku zapisnika, ako je potrebno prilagodite putanju.

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

Sada pokrenite aplikaciju. Vidjet ćete da upite baze podataka počinju letjeti u prozoru terminala. (provjerite imate li pomicanje i povijest omogućena na terminalu)

Impresioniran sam, phpbb3 ima prilično čvrst, optimiziran SQL kod. WordPress, s druge strane, vrlo je neučinkovit.

Link
Plus
Send
Send
Pin