6
A
回答
6
否 - general query log是你的日志查询唯一的选择 - 这是服务器宽......虽然你可以登录到一个表,然后删除你不结果需要
2
这是可能的使用Percona的工具包的pt-query-digest 。
如果你想监控所有SELECT
S,UPDATE
s和JOIN
小号感人table_one
,table_two
和table_three
上my_database
,运行这样的数据库服务器上会做的伎俩:
tcpdump -s 65535 -x -nn -q -tttt -i any -c 1000 port 3306 |
pt-query-digest --type tcpdump \
--run-time 5s \
--iterations 0 \
--filter '$event->{fingerprint} =~ m/\b(from|join|into)\s+(`?my_database`?\.)`?(table_one|table_two|table_three)`?\b/' \
--output slowlog \
--no-report
这将使用tcpdump
监控所有传入的数据库流量,并将其分配到pt-query-digest
工具中,该工具然后尝试将其过滤到这些表上的查询。输出将看起来像MySQL的慢查询日志。
您需要调整--filter
参数中的正则表达式以适应您的需求。正如大多数正则表达式的情况一样,会出现很多边缘情况。我试图涵盖其中的一些,但在正则表达式方面,我绝不是专家。
这不是一个完美的解决方案,但它在我使用通用查询日志被禁止的某些情况下完成了这个诀窍。
相关问题
- 1. 如何启用vstest.console.exe日志记录?
- 2. Hadoop启用日志记录
- 3. VBA启用日志记录
- 4. 启用Activiti日志记录
- 5. nohup启动sql和日志记录
- 6. 如何为每个REST调用启用日志记录到我的API?
- 7. 如何比较SQL SELECT语句中整个表的表记录?
- 8. PL/SQL日志记录 - 如何控制?
- 9. 使用log4net启用日志记录!
- 10. Log4J SQL日志记录TopLink
- 11. 如何在Dropwizard中记录SQL语句
- 12. 使用系统日志时禁用/启用日志记录
- 13. 记录SqlDataAdapter的每个语句C#
- 14. DWR在grails中启用日志记录?
- 15. 启用地铁/管道日志记录
- 16. 为JDBC启用日志记录
- 17. 在Ubuntu中启用CodeIgniter日志记录
- 18. 为JpaTransactionManager启用日志记录
- 19. 禁用MySQL通用日志记录而不重新启动?
- 20. mysql限制每个用户在登录日志表中的行
- 21. 如何配置IBM WAS SystemOut日志记录以自定义每个应用程序的日志记录?
- 22. OpenShift WildFly Cartridge启用日志与公用日志记录和Log4J
- 23. 如何用一个sql语句更新同一个表中的多个记录?
- 24. 在docker mysql容器中启用日志记录
- 25. 如何使用官方Docker镜像启用MySQL二进制日志记录?
- 26. 如何使用Log4Net启用IP地址日志记录
- 27. 如何保持启用Azure应用程序日志记录?
- 28. 如何使用Libwebsockets启用调试日志记录?
- 29. 如何启用/禁用ASP.NET上的日志记录
- 30. 如何启用NServiceBus通用主机的日志记录