Следете всички SQL заявки в MySQL

Следете всички SQL заявки в MySQL
Следете всички SQL заявки в MySQL
Anonim

SQL Server на Microsoft има инструмент, наречен Profiler, който можете да използвате за проследяване на всяка SQL заявка, която удря базата данни. Това е изключително полезно както за програмисти, така и за администратори на бази данни, за да отстранявате точните заявки, генерирани от дадено приложение.

След като често използвах MySQL, това беше едно от първите неща, които исках да разбера как да го направя. Как иначе може да видите действителния SQL код, генериран от WordPress или phpBB?

Първото нещо, което трябва да направите, е да включите записите на заявки в MySQL. Бъдете предупредени, че това трябва да се прави само в процес на разработка … наистина забавя нещата, за да се регистрират всяка една заявка във файл.

Намерете и отворете MySQL конфигурационния файл, обикновено /etc/mysql/my.cnf на Ubuntu. Потърсете раздела "Записване и репликация"

# # * 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

Просто отключете променливата "лог", за да включите регистрацията. Рестартирайте MySQL с тази команда:

sudo /etc/init.d/mysql restart

Сега сме готови да започнем да наблюдаваме заявките при влизането им. Отворете нов терминал и изпълнете тази команда, за да прегледате регистрационния файл, ако е необходимо, да коригирате пътя.

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

Сега изпълнете заявката си. Ще видите, че заявките за базата данни започват да се движат във вашия терминален прозорец. (уверете се, че имате превъртане и история, активирани на терминала)

Препоръчано: