记录mysql中的所有查询
我可以在我的 mysql 数据库上打开审计日志吗?
Is it possible for me to turn on audit logging on my mysql database?
我基本上想监控所有查询一个小时,并将日志转储到文件中.
I basically want to monitor all queries for an hour, and dump the log to a file.
推荐答案
UPDATE: NO LONGER VALID FOR MYSQL 5.6+
UPDATE: NO LONGER VALID FOR MYSQL 5.6+
使用 --log 选项启动 mysql:
Start mysql with the --log option:
mysqld --log=log_file_name
或将以下内容放入您的 my.cnf
文件中:
or place the following in your my.cnf
file:
log = log_file_name
任何一个都会将所有查询记录到 log_file_name.
Either one will log all queries to log_file_name.
您还可以使用 --log-slow-queries
选项而不是 --log
选项仅记录慢查询.默认情况下,需要 10 秒或更长时间的查询被认为是缓慢的,您可以通过将 long_query_time
设置为查询在被记录之前必须执行的秒数来更改这一点.
You can also log only slow queries using the --log-slow-queries
option instead of --log
. By default, queries that take 10 seconds or longer are considered slow, you can change this by setting long_query_time
to the number of seconds a query must take to execute before being logged.
相关文章