出于调试目的,我希望在服务器级别记录MySQL返回的SQL错误和警告消息,以及相应的查询。
我发现了两个有用的Lua脚本:
https://github.com/koopa/mysql-proxy-log-error-queries/blob/master/mysql-proxy-log-error-queries.lua https://github.com/patrickallaert/MySQL-Proxy-scripts-for-devs (debug.lua)
允许使用MySQL代理记录错误。但我仍在寻找一种记录警告的方法。我对mysql-proxy LUA-scripting没有信心。有人能告诉我怎么做吗?
这个问题:Log warnings into a table似乎很接近,但不幸的是,提供的链接是死的,我找不到内容。
发布于 2013-07-04 18:13:29
我最终在学习文学的过程中研究了这个主题,并开发了适合我的Lua脚本。
我首先提到的脚本(https://github.com/koopa/mysql-proxy-log-error-queries/blob/master/mysql-proxy-log-error-queries.lua)是一个很好的起点,但是:
SHOW WARNINGS返回某些内容(错误、警告或注释)的每个查询。'。在记录所有警告时,有一点我们必须小心:所有查询都不会清除警告/注释队列。因此,SHOW WARNINGS可以在不生成警告的查询之后返回由前一个查询生成的结果集。为了解决这个问题,我使用了一个脏方法:在检测到一个查询之后,我注入了一个错误的查询,我知道它会为它生成一个错误消息;然后我会忽略这个错误消息。这是一种“清除”警告和注释的方法。
发布于 2013-07-02 20:53:36
您可以下载此脚本并在配置MySQL-proxy时指定。此处列出了命令行选项:MySQL-proxy-configuration
典型的MySQL代理配置在您的示例中如下所示:
代理$mysql-代理--代理后端地址=192.168.x.x:3305--代理地址=192.168.y.y:4045 --proxy-lua-script=mysql-proxy-log-error-queries.lua
我猜您可能需要修改此脚本才能连接到MySQL-proxy。
https://stackoverflow.com/questions/17415727
复制相似问题