“Microsoft SQL Server Profiler是SQL Trace的图形用户界面,用于监视数据库引擎或Analysis Services的实例。”
我发现使用SQL Server Profiler在开发,测试和调试数据库应用程序问题时非常有用。有人知道MySql是否有相应的程序吗?
答案 0 :(得分:33)
社区服务器5.0.37版中的一些很酷的东西是MySQL's new profiler。
这可能会为您提供您正在寻找的信息。
答案 1 :(得分:10)
您想要监控性能,还是仅查看正在执行的查询?如果是后者,您可以配置MySQL以记录它给出的所有查询。在RedHat Linux框中,您可以添加
log = /var/lib/mysql/query.log
到/etc/my.cnf
的[mysqld]部分。
请记住,在繁忙的数据库场景中,这些日志可能会变得非常大。
答案 2 :(得分:8)
尝试JET profiler是一个实时查询性能和诊断工具! 我在工作中使用它。优秀的软件和支持。 Review Jet Profiler for MySQL
答案 3 :(得分:4)
在我看来,我发现这里的一切都是原始的......
在Ubuntu上找到并打开你的MySQL配置文件,通常是/etc/mysql/my.cnf。查找“记录和复制”部分
# * 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中,注释掉这行代码
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
答案 4 :(得分:3)
答案 5 :(得分:2)
不确定图形用户界面,但是有一个命令帮助我使用工作台在MySQL中对存储过程进行了大量的分析:
SET profiling = 1;
call your_procedure;
SHOW PROFILES;
SET profiling = 0;
答案 6 :(得分:1)
如果版本5.0.37不可用,您可能需要查看mytop。它只是输出服务器的当前状态,但允许您对特定查询运行EXPLAIN(由mercutio提及)。
答案 7 :(得分:0)
我不知道任何分析应用程序本身,但使用EXPLAIN语法分析查询是很常见的。您可以使用它们来确定要创建的最佳索引,或者您可以尝试更改整体查询并查看它如何更改效率等。
答案 8 :(得分:0)
Usin Neor Profiler SQL很有用!!该应用程序对所有用户都是免费的。 http://www.profilesql.com/download/