在mysql中,我们有sys.x$statements_with_full_table_scans,它告诉我们整个扫描的情况。
但是我有很多erp用户执行许多脚本,而且我没有一个好的软件来监控我的应用程序。
我的问题是。
有人有一个脚本列出完整的扫描脚本,并列出执行这些脚本的用户吗?
发布于 2022-04-19 15:14:36
MySQL服务器不知道哪个客户端脚本负责给定的查询。它甚至可能是MySQL客户端工具中的用户以交互方式运行的查询。
一旦知道了导致全面扫描的查询,就可以使用show processlist,如果您看到了糟糕的查询,请查看User和Host来识别用户(假设每个人类用户都有一个不同的MySQL用户名)。
然后请求在该用户的脚本中对该查询执行代码搜索。
在Oracle数据库中,流程细节包括打开该会话的客户端program。示例:http://www.dba-oracle.com/oracle_tips_process_detail.htm
但是MySQL的协议没有这些信息。客户端不发送客户端程序的名称,因此MySQL服务器不知道它。
https://stackoverflow.com/questions/71926488
复制相似问题