我在 Wamp 服务器环境下使用 Mysql 5.6.12。现在我想将所有查询记录到“.log”文件中,由 PHP 或 PHPMyAdmin 运行的查询,我想记录它们......
Mah*_*til 23
[mysqld]
# Set Slow Query Log
long_query_time = 1
slow_query_log = 1
slow_query_log_file = /usr/log/slowquery.log
log_queries_not_using_indexes = 1
#Set General Log
general_log = on
general_log_file=/usr/log/general.log
Run Code Online (Sandbox Code Playgroud)
请注意,general_log在生产服务器上启用会产生开销,您应该避免它。您可以从 中检查有问题的查询slow log。
小智 13
由于这是您可能只想暂时执行的类型的事情,因此从 shell 而不是通过配置文件执行此操作可能会很有用:
> set global general_log_file = "/var/log/mysql/queries.log";
> set global general_log = "ON";
[wait some time, hit some pages, whatever]
> set global general_log = "OFF";
Run Code Online (Sandbox Code Playgroud)
将这两行放在 my.cnf 中。
[mysqld]
general_log = on
general_log_file=/users/ugrad/linehanp/mydb/logfile.txt
Run Code Online (Sandbox Code Playgroud)
这会将来自任何来源的所有查询记录到服务器,而不仅仅是 PHP/PHPMyAdmin。
不过要小心 - 启用常规日志可能会给您的服务器带来沉重的负担。仅在短期/调试时谨慎使用。
该文档可在此处获得。从那里:
要在运行时禁用或启用常规查询日志或更改日志文件名,请使用全局 general_log 和 general_log_file 系统变量。将 general_log 设置为 0(或 OFF)以禁用日志或设置为 1(或 ON)以启用它。设置general_log_file 以指定日志文件的名称。
所以,
general_log = on
Run Code Online (Sandbox Code Playgroud)
和
general_log = 1
Run Code Online (Sandbox Code Playgroud)
是同义词!
| 归档时间: |
|
| 查看次数: |
69355 次 |
| 最近记录: |