Начална » как да » Монитор Всички SQL заявки в MySQL

    Монитор Всички 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, от друга страна, е много неефективна.