Sou*_*rav 1 mysql linux ubuntu
我需要将SQL记录到文件中,以便稍后检查哪个SQL运行.
所以我打开opt/lampp/etc/my.cnf并添加这些行
log_slow_queries
log_queries_not_using_indexes =1
long_query_time = 1
slow_query_log = 1
slow_query_log_file = "/opt/lampp/logs/query.log"
Run Code Online (Sandbox Code Playgroud)
但它没有记录查询它甚至没有创建query.log文件,所以我创建了一个带有名称的空文件,但它仍然无法正常工作.
Edit
[mysqld]
log_slow_queries
log_queries_not_using_indexes =1
long_query_time = 1
slow_query_log = 1
general_log = 1
slow_query_log_file = /opt/lampp/logs/query.log
general_log_file = "/opt/lampp/logs/query.log"
Run Code Online (Sandbox Code Playgroud)
这只会记录慢查询.如果要查看所有查询,则需要常规日志.
general_log = 1
general_log_file = "/opt/lampp/logs/query.log"
Run Code Online (Sandbox Code Playgroud)
请注意,您需要重新启动服务器才能使其生效.此外,您应该仅在测试期间使用此类型的日志记录,因为它确实会导致速度降低.
正如其他用户提到的,这可能是权限问题.首先,检查MySQL正在运行的用户ps -u -p $(pgrep mysql).用户名将显示在第一列下USER.在你的情况下,似乎用户是nobody.您可以通过查看用户的默认组groups nobody.这应该打印出类似的东西nobody : nogroup.
要修复文件的权限,只需运行即可chown nobody:nogroup /opt/lampp/logs/query.log.
| 归档时间: |
|
| 查看次数: |
14766 次 |
| 最近记录: |