atlas+mysql 实现读写分离

目前Mysql 自己本事做不到完全的HA,不过可以利用keepalived做读HA。
atlas 是奇虎360  改造后的MySQL Proxy,支持Mysql 读写分离功能。

1, 下载安装Altas(mysql proxy)
wget  https://s3.amazonaws.com/github-cloud/releases/9273884/5b567b50-f8fa-11e2-8273-f9d05a6054fa.deb?response-content-disposition=attachment%3B%20filename%3DAtlas-1.0.3-x86_64.deb&AWSAccessKeyId=AKIAISTNZFOVBIJMK3TQ&Expires=1378883777&Signature=jH8JYodbNhaFC8eVLMLJ3RmoWnI%3D 
2. dpkg -i Atlas-1.0.3-x86_64.deb
3. aptitude install keepalived (安装keepalived)
4. 安装Mysql master与Slave 
(slave readonly)
5. 配置mysql-proxy
root@ubuntu64:/usr/local/mysql-proxy/conf# vim myproxy.cnf
[mysql-proxy]
plugins = admin, proxy
admin-username =myproxyadmin
admin-password =myproxypwd
admin-lua-script = /usr/local/mysql-proxy/lib/mysql-proxy/lua/admin.lua
proxy-backend-addresses = 192.168.40.246:3306
proxy-read-only-backend-addresses = 192.168.40.155:3306@2
daemon = true
keepalive = true
event-threads = 4
log-level = message
log-path = /usr/local/mysql-proxy/log
instance = myproxy
proxy-address = 0.0.0.0:1234
admin-address = 0.0.0.0:2345
min-idle-connections = 2
6.启动mysql-proxy
   bin/mysql-proxyd myproxy start
   bin/mysql-proxyd myproxy stop
   bin/mysql-proxyd myproxy restart
7.查看状态
   bin/mysql-proxyd myproxy status

8.连接Mysql-proxy
mysql -h192.168.20.186 -umyproxyadmin -pmyproxypwd usermanager -P1234 -e 'select count(*) from a';
1>  读写分离
当 -e 中没有开启事务,只是select,那么将会自动被分配到slave中,
当 -e 中没有开启事务,但有insert,update,delete 操作,那么将会自动被分配到master中,
当 -e 中开启了事务,不管是select ,还是Insert,update,delete,都会被分配到master。

2>连接为长连接

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值