mysql服务器是否保留在其上执行的查询记录,如果这样做,是否可以检索这些查询。
感谢。
答案 0 :(得分:2)
如果要记录所有执行的查询,可以启用General Query Log或Slow Query Log并将阈值设置为0秒(任何超过0秒的查询都将记录)。
另一个选项是Binary log。但是,二进制日志不会记录SELECT
或SHOW
等不修改数据的查询。
请注意,这些日志在具有流量的服务器中相当快。而且两者都可能包含密码,因此必须保护它们免受未经授权的攻击。</ p>
答案 1 :(得分:2)
您可以使用General Query Log,以纯文本格式记录所有查询。
我们只在我们的开发环境中启用了此功能。在非高峰时段暂时在生产服务器上打开它应该不是问题。
如果您正在寻找慢查询,也可以使用Slow Query Log。
答案 2 :(得分:1)
答案 3 :(得分:0)
还有另一种选择 - 使用分析器。