如何配置MySQL数据库。我想看到所有SQL都是针对数据库运行的。
我知道你可以这样做:
set profiling=1;
SELECT * FROM messages WHERE fromaddress='xxx';
SHOW PROFILES;
但这似乎只适用于在命令行上运行的东西,我希望看到运行网站的结果。
答案 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)
答案 3 :(得分:1)
答案 4 :(得分:0)
MySqlAdministrator有一些有用的内置功能(包括日志视图),但对于日志,它必须在与数据库相同的机器上运行