实现方式
MySQL-Proxy
MyCat
Amoeba
实现主从复制
172.25.41.2 (主)
172.25.41.3 (从)
MySQL-Proxy (172.25.41.1)
获取文件mysql-proxy-0.8.5-linux-el6-x86-64bit.tar.gz,解压,建立软链接,如下
进入目录,创建日志和配置文件目录
修改文件/usr/local/mysql-proxy/share/doc/mysql-proxy/rw-splitting.lua改低连接数,方便测试
编写配置文件,同时修改权限为600,以便启动
[mysql-proxy]
user=root
# 分离主机
proxy-address=172.25.41.1:3306
# 读,从数据库
proxy-read-only-backend-addresses=172.25.41.3:3306
# 写,主数据库
proxy-backend-addresses=172.25.41.2:3306
# 指定分离参数脚本
proxy-lua-script=/usr/local/mysql-proxy/share/doc/mysql-proxy/rw-splitting.lua
# 日志文件
log-file=/usr/local/mysql-proxy/logs/mysql-proxy.log
# PID文件
pid-file=/usr/local/mysql-proxy/logs/mysql-proxy.pid
# 日志等级
log-level=debug
# 插件方式运行
plugins=proxy
# 以deamon方式运行
daemon=true
# 实现实时检测
keepalive=true
指定配置文件,启动服务,查看端口
测试
主库赋予用户查询,添加,修改权限(172.25.41.2)
grant select,insert,update on *.* to 'octopus'@'172.25.41.%';
主库上新建数据库octopus,同时新建表,内容如下(172.25.41.2)
由于同步,查看从库信息也进行了更新(172.25.41.3)
此时停止同步(172.25.41.3)
链接数据库进行测试(172.25.41.254)
插入数据(172.25.41.254)
在主数据库上查询到(172.25.41.2)
而从数据库失败(172.25.41.3)