Log all queries in mysql(记录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.
这篇关于记录mysql中的所有查询的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:记录mysql中的所有查询
基础教程推荐
- while 在触发器内循环以遍历 sql 中表的所有列 2022-01-01
- 从字符串 TSQL 中获取数字 2021-01-01
- ORA-01830:日期格式图片在转换整个输入字符串之前结束/选择日期查询的总和 2021-01-01
- 使用 VBS 和注册表来确定安装了哪个版本和 32 位 2021-01-01
- 带有WHERE子句的LAG()函数 2022-01-01
- MySQL根据从其他列分组的值,对两列之间的值进行求和 2022-01-01
- 带更新的 sqlite CTE 2022-01-01
- CHECKSUM 和 CHECKSUM_AGG:算法是什么? 2021-01-01
- MySQL 5.7参照时间戳生成日期列 2022-01-01
- 如何在 CakePHP 3 中实现 INSERT ON DUPLICATE KEY UPDATE aka upsert? 2021-01-01
