Монитор Всички SQL заявки в MySQL
SQL Server на Microsoft има инструмент, наречен Profiler, който можете да използвате, за да наблюдавате всяка SQL заявка, която попада в базата данни. Това е изключително полезно за програмисти, както и за администратори на бази данни, за отстраняване на точните заявки, генерирани от приложение.
Преминавайки към използването на MySQL често, това беше едно от първите неща, които исках да разбера как да направя. Как иначе ще видите действителния SQL код, генериран от WordPress или phpBB?
Първото нещо, което трябва да направим, е да включим регистрирането на заявки в MySQL. Бъдете предупредени, че това трябва да се направи само в процеса на разработка… наистина забавя нещата, за да регистрира всяко едно запитване във файл.
Намерете и отворете MySQL конфигурационния файл, обикновено /etc/mysql/my.cnf в Ubuntu. Потърсете раздела, в който се казва „Регистриране и репликация“
#
# * Влизане и репликация
#
# Двете местоположения се завъртат от cronjob.
# Имайте предвид, че този тип регистрационен файл е убиец на производителността.log = /var/log/mysql/mysql.log
Просто разкоментирайте променливата "log", за да включите регистрирането. Рестартирайте MySQL с тази команда:
sudo /etc/init.d/mysql рестартиране
Сега вече сме готови да започнем да наблюдаваме заявките, когато те влязат..
tail -f /var/log/mysql/mysql.log
Сега стартирайте приложението си. Ще видите, че заявките за базата данни започват да летят в терминалния ви прозорец. (уверете се, че сте активирали превъртане и история в терминала)
Впечатлен съм, че phpbb3 има доста тесен, оптимизиран SQL код. WordPress, от друга страна, е много неефективна.