数据库中间件mysql-proxy细节【mysql官方的中间件】

一、mysql-proxy简介

mysql-proxy是mysql官方提供的mysql中间件服务,上游可接入若干个mysql-client,后端可连接若干个mysql-server,它使用mysql协议,任何连接mysql的上游无需任何更改即可迁移至mysql-proxy上。

mysql-proxy最基本的用法,就是作为一个请求拦截,请求中转的中间层:

进一步的,mysql-proxy可以分析与修改请求。拦截查询和修改结果,需要通过编写Lua脚本来完成。mysql-proxy允许用户指定Lua脚本对请求进行拦截,对请求进行分析与修改,它还允许用户指定Lua脚本对服务器的返回结果进行修改,加入一些结果集或者去除一些结果集均可。

【SK画外音:sql拦截与修改,性能分析与监控,读写分离,请求路由等各种功能都是通过编写Lua脚本来完成的,mysql-proxy是个框架,具备很好的扩展性。这个框架提供了6个hook点,能够让用户能够动态的介入到client与server中的通讯中去。】

二、mysql-proxy命令参数

版本显示

使用--version参数即可:

./mysql-proxy --version

从输出可以看到mysql-proxy的版本,以及依赖的glib,libevent,lua的版本

1 mysql-proxy0.8.3

2 chassis: mysql-proxy 0.8.3

3 glib2: 2.16.6

4 libevent: 1.4.13-stable

5 LUA: Lua 5.1.4

8 -- modules

9 proxy: 0.8.3

简单启动

mysql-proxy启动至少需要指定一个后端mysql的ip和端口号,此时带上--proxy-backend-addresses参数即可:

./mysql-proxy --proxy-backend-addresses=127.0.0.1:3306

指定配置文件启动

mysql-proxy亦可以指定配置文件启动,此时带上--defaults-file来指定配置文件即可:

./mysql-proxy --defaults-file=./mysql-proxy.cnf

mysql-proxy.cnf的格式如下:

1[mysql-proxy]

2proxy-backend-addresses = 127.0.0.1:3306

需要注意,在命令行中参数前需要加入“--”,而在配置文件中则不需要。

寻求帮助

可以使用--help,或者--help-all

./mysql-proxy --help

./mysql-proxy --help-all

Proxy常用选项

选项

说明

proxy-backend-addresses=$host:$port

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值