体验mysql

WBOY
WBOYOriginal
2016-06-07 15:26:411165Durchsuche

上周就看到了mysql-proxy出来的消息,今天下午才抽空体验了一下 1. 编译-安装 http://forge.mysql.com/wiki/MySQL_Proxy 下载mysql-proxy的代码, ./configure报错,找不到lua包,然后下lua包,再./confgure,又报 错,找不到glib,再去下glib,这次ok了,ma

上周就看到了mysql-proxy出来的消息,今天下午才抽空体验了一下

1. 编译-安装

http://forge.mysql.com/wiki/MySQL_Proxy下载mysql-proxy的代码,

./configure报错,找不到lua包,然后下lua包,再./confgure,又报

错,找不到glib,再去下glib,这次ok了,make下来生成了一个

mysql-proxy的可执行文件,执行一下./mysql-proxy --help有help信息

输出,这一步搞定,看了一下文档,依赖的包:

libevent  lua glib mysqlclient

2. 运行,配置

主页上有个getting started,粗看了一遍,没有配置文件,就一个mysql

-proxy可执行文件加上执行参数(比较爽),

主要的执行参数:
  --admin-address=   admin server的ip:port,admin server是 

一个伪代理,可以用mysql客户端连过来,但只支持一些特殊的查看proxy

状态的一些指令
  --proxy-address=     代理的ip:port,默认是0.0.0.0:4040
  --proxy-read-only-address=     代理的只读连接ip:port 默认0.0.0.0:4042(试了一下好像没有作用)
  --proxy-backend-addresses=     db server的地址,默认是127.0.0.1:3306,可以指定多个来做failover和load balance
  --proxy-profiling                       enable profiling of queries (没试)
  --proxy-fix-bug-25371                   fix bug #25371 (mysqld > 5.1.12) for older libmysql versions (没试)
  --proxy-lua-script=               lua脚本文件

运行./mysql-proxy --admin-address=127.0.0.1:4041 &,这样代理服务器运行在4040端口,admin服务器在

127.0.0.1:4041,转发db server为127.0.0.1:3306,没有lua-script

然后运行mysql --host 127.0.0.1 --port 4040

show database; use mysql; select user,代理工作正常。

 3. 持续工作

-学习lua脚本

-测试多个backend时候的failover 和load balance的行为

-如何使用lua来实现后端多个切分的数据库对前端client的透明(用proxy的主要目的)

-如何达到client-proxy大量连接 proxy-db少量连接,来增加db的并发能力,目前看

好像是client-proxy-db一对一连接的方式

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn