如何配置MySQL

时间:2009-06-18 14:16:39

标签: mysql sql profiling database-tuning

如何配置MySQL数据库。我想看到所有SQL都是针对数据库运行的。

我知道你可以这样做:

  • set profiling=1;
  • 运行慢速查询(例如SELECT * FROM messages WHERE fromaddress='xxx';
  • SHOW PROFILES;

但这似乎只适用于在命令行上运行的东西,我希望看到运行网站的结果。

5 个答案:

答案 0 :(得分:6)

你想要query log - 但显然在繁重的生产服务器上这样做可能是......不明智的。

答案 1 :(得分:3)

这对我在Ubuntu上有用。

在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

答案 2 :(得分:1)

您只需实时解析查询日志即可。如果在linux上,你可以使用tail -f来查看实时日志

此外,您可以尝试这些人的免费软件:

http://hackmysql.com/mysqlsla

答案 3 :(得分:1)

答案 4 :(得分:0)

MySqlAdministrator有一些有用的内置功能(包括日志视图),但对于日志,它必须在与数据库相同的机器上运行