MySQL 的事件探查器
是不是一直为怎样调试 MySQL 上的应用程序而苦恼?现在有个工具可以让我们脱离苦海了--MySQL Proxy,从名称上就可以看出来是 MySQL 代理,可以作为 MySQL 服务器和客户端的中介,因为使用 MySQL 的网络协议,所以所有兼容该协议的 MySQL 客户端都不需要做修改就可以直接连接。除了转发外,还可以监控、过滤和修改客户端与服务器之间的通信数据,MySQL Proxy 以 lua 作为脚本语言。
支持 MySQL 5.0.x 以上版本,由于还是 alpha,不建议用在实际生产环境,但是作为开发工具来说还是很有用的,可以实现类似 MSSQL 的事件探器功能。
安装:
有 Linux 和 Windows 平台的二进制包下载,解开直接使用即可。
主要命令行选项:
--help-all — 显示所有帮助选项。
--proxy-backend-addresses=host:port — 要连接的 MySQL 服务器地址和端口,可以接多个服务器,请求会以轮询的方式进行转发。
--proxy-lua-script=file 要载入的 lua 脚本文件。
使用示例:
启动代理
mysql-proxy --proxy-backend-addresses=localhost:3306 --proxy-lua-script=./examples/tutorial-query-time.lua
注:自带的这个示例脚本可以显示收到的 SQL 操作请求和执行时间,也可以自己编写脚本
客户端连接
跟平常连服务器一样,只是默认端口是 4040,连接后就可以进行 SQL 操作了,相应命令会显示在 Proxy 上。
更细节内容请参考 MySQL 参考手册。
支持 MySQL 5.0.x 以上版本,由于还是 alpha,不建议用在实际生产环境,但是作为开发工具来说还是很有用的,可以实现类似 MSSQL 的事件探器功能。
安装:
有 Linux 和 Windows 平台的二进制包下载,解开直接使用即可。
主要命令行选项:
--help-all — 显示所有帮助选项。
--proxy-backend-addresses=host:port — 要连接的 MySQL 服务器地址和端口,可以接多个服务器,请求会以轮询的方式进行转发。
--proxy-lua-script=file 要载入的 lua 脚本文件。
使用示例:
启动代理
mysql-proxy --proxy-backend-addresses=localhost:3306 --proxy-lua-script=./examples/tutorial-query-time.lua
注:自带的这个示例脚本可以显示收到的 SQL 操作请求和执行时间,也可以自己编写脚本
客户端连接
跟平常连服务器一样,只是默认端口是 4040,连接后就可以进行 SQL 操作了,相应命令会显示在 Proxy 上。
更细节内容请参考 MySQL 参考手册。