如何在MySQL中获取SQL查询对象或解析树?

时间:2012-11-20 10:41:15

标签: mysql

我需要分析针对MySQL数据库运行的查询,以便查看正在访问哪些表,列等。我可能也会查询重写。

MySQL是否提供回调/挂钩,它可以将查询信息作为解析对象提供给我,而不是记录到文件的原始字符串。

我读到了Audit Plugin API,但它也将查询作为字符串传递而不是结构化格式。

非常感谢任何帮助或指示。

2 个答案:

答案 0 :(得分:0)

Does MySQL provide a callback/hook where it can give me the query information as a parsed object, instead of the raw string that gets logged to the files.

不,没有这样的界面。

也没有抽象语法树,解析器生成的结构与服务器运行时非常吻合。

答案 1 :(得分:0)

听起来您需要的是AQT:https://dev.mysql.com/worklog/task/?id=4533。 但它只会将MySQL查询转换为树,而不会考虑数据库