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中的所有查询


基础教程推荐
- 表 './mysql/proc' 被标记为崩溃,应该修复 2022-01-01
- 如何根据该 XML 中的值更新 SQL 中的 XML 2021-01-01
- mysql选择动态行值作为列名,另一列作为值 2021-01-01
- 二进制文件到 SQL 数据库 Apache Camel 2021-01-01
- MySQL 中的类型:BigInt(20) 与 Int(20) 2021-01-01
- 如何在 SQL 中将 Float 转换为 Varchar 2021-01-01
- oracle区分大小写的原因? 2021-01-01
- 什么是 orradiag_<user>文件夹? 2022-01-01
- 在 MySQL 中:如何将表名作为存储过程和/或函数参数传递? 2021-01-01
- 在多列上分布任意行 2021-01-01