Ответ 1
Что-то классное, что в версии 5.0.37 сервера сообщества MySQL new profiler.
Это может дать вам информацию, которую вы ищете.
"Microsoft SQL Server Profiler - графический пользовательский интерфейс для SQL Trace для мониторинга экземпляра Database Engine или Analysis Services".
Я нахожу использование SQL Server Profiler чрезвычайно полезным во время разработки, тестирования и когда я отлаживаю проблемы с приложением базы данных. Кто-нибудь знает, есть ли эквивалентная программа для MySql?
Что-то классное, что в версии 5.0.37 сервера сообщества MySQL new profiler.
Это может дать вам информацию, которую вы ищете.
Хотите ли вы контролировать производительность или просто посмотреть, какие запросы выполняются? Если последний, вы можете настроить MySQL для регистрации всех запрошенных им запросов. В окне RedHat Linux вы можете добавить
log = /var/lib/mysql/query.log
в раздел [mysqld] /etc/my.cnf
перед перезагрузкой MySQL.
Помните, что в сценарии загруженной базы данных эти журналы могут расти довольно большими.
Попробуйте профилировщик JET - инструмент для анализа и диагностики запросов в реальном времени! Я использую его в своей работе. Отличное программное обеспечение и поддержка. Обзор Jet Profiler для MySQL
Jet Profiler хорош, если это платная версия. LogMonitor просто указывает на файл журнала 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, комментируйте OUT эти строки кодов
general_log_file = /var/log/mysql/mysql.log
general_log = 1
log_error = /var/log/mysql/error.log
Просто раскомментируйте переменную "log", чтобы включить ведение журнала. Перезапустите MySQL с помощью этой команды: sudo/etc/init.d/mysql restart
Теперь были готовы начать мониторинг запросов по мере их поступления. Откройте новый терминал и запустите эту команду, чтобы прокрутить файл журнала, при необходимости отрегулировав путь.
tail -f /var/log/mysql/mysql.log
Если версия 5.0.37 недоступна, вы можете посмотреть mytop. Он просто выводит текущий статус сервера, но позволяет запускать EXPLAIN как (упомянутый mercutio) по конкретным запросам.
Я не знаю о каких-либо профилирующих приложениях как таковых, но обычно использовать синтаксис EXPLAIN для анализа запросов. Вы можете использовать их для определения лучших индексов для создания, или вы можете попробовать изменить общий запрос и посмотреть, как он изменяет эффективность и т.д.
Не уверен в графическом интерфейсе пользователя, но есть команда, которая очень помогла мне в профиле хранимых процедур в MySQL с помощью workbench:
SET profiling = 1;
call your_procedure;
SHOW PROFILES;
SET profiling = 0;