MySQL读写分离之Proxy
2024-08-31 17:52:49
MySQL Proxy:
========================================================
MySQL_Proxy Master Slave1 Slave2
=========================================
IP 192.168.1.250 192.168.1.215 192.168.1.66
Server_ID 6 215 66
实现步骤:
MySQL主/备复制
安装并配置MySQL Proxy
测试Proxy
一、MySQL主/备复制(略)
二、安装并配置MySQL Proxy
1. 安装并配置
[root@MySQL_Proxy ~]# service mysqld stop
[root@MySQL_Proxy ~]# chkconfig mysqld off
[root@MySQL_Proxy ~]# rpm -qa |grep lua
lua-5.1.4-4.1.el6.x86_64
[root@MySQL_Proxy ~]# tar xf mysql-proxy-0.8.4-linux-el6-x86-64bit.tar.gz -C /usr/local/
[root@MySQL_Proxy ~]# cd /usr/local/
[root@MySQL_Proxy ~]# ln -s mysql-proxy-0.8.4-linux-el6-x86-64bit mysql-proxy
[root@MySQL_Proxy ~]# vim /usr/local/mysql-proxy/share/doc/mysql-proxy/rw-splitting.lua
min_idle_connections = 1,
max_idle_connections = 1,
2. 启动mysql-proxy
[root@MySQL_Proxy ~]# lsof -i TCP:3306
[root@MySQL_Proxy ~]# /usr/local/mysql-proxy/bin/mysql-proxy --help-proxy
-P 指定proxy服务器工作的地址和端口
-b 指定写服务器的地址和端口
-r 指定读服务器的地址和端口
-s 指定判断的脚本
--daemon 以后台进程的方式启动
调整最大打开的文件数
[root@MySQL_Proxy ~]# ulimit -a |grep 'open files'
[root@MySQL_Proxy ~]# ulimit -n 10240
[root@MySQL_Proxy ~]# ulimit -a |grep 'open files'
open files (-n) 10240
[root@MySQL_Proxy ~]# /usr/local/mysql-proxy/bin/mysql-proxy -P 192.168.1.250:3306 -b 192.168.1.27:3306 -r 192.168.1.215:3306 -r 192.168.1.66:3306 -s /usr/local/mysql-proxy/share/doc/mysql-proxy/rw-splitting.lua --daemon
2014-02-13 17:15:54: (critical) plugin proxy 0.8.4 started
[root@MySQL_Proxy ~]# netstat -tnlp |grep :3306
tcp 0 0 192.168.10.137:3306 0.0.0.0:* LISTEN 16620/mysql-proxy
[root@MySQL_Proxy ~]# vim /etc/rc.local
ulimit -n 10240
/usr/local/mysql-proxy/bin/mysql-proxy -P 192.168.1.250:3306 -b 192.168.1.27:3306 -r 192.168.1.215:3306 -r 192.168.1.66:3306 -s /usr/local/mysql-proxy/share/doc/mysql-proxy/rw-splitting.lua --daemon
三、测试
1. 主库
mysql> grant ALL on bbs.* to bbs@'192.168.1.%' identified by 'localhost';
mysql> flush privileges;
mysql> create database bbs;
mysql> create table bbs.t1 (name varchar(50));
2. 备库
mysql> stop slave; //暂时断掉和主库的连接
3. 从客户端测试
a. 读 ====主 or 备
b. 写 ====主
4. 备库
mysql> start slave;
=======================================================
最新文章
- unity3D 搞定任意ios插件
- MySQL多表更新(逻辑外键/事实外键)
- Oracle 11g对大表中添加DEFAULT值的NOT NULL字段速度有大幅度的提升
- PE文件数字签名信息读取存储及格式具体解释图之上(历史代码,贴出学习)
- phpStudy 2014的Apache虚拟主机配置
- Win8.1中打不开IE的解决方法
- 转:30分钟掌握STL
- IOS 视频.图片上传服务器
- C#设计模式之十七中介者模式(Mediator Pattern)【行为型】
- 尚硅谷面试第一季-09SpringMVC中如何解决POST请求中文乱码问题GET的又如何处理呢
- 枚举Enum和常量0之间的恩怨
- Ionic 安装最新版本错误
- 【反射】Reflect Class Field Method Constructor
- 【BZOJ4154】Generating Synergy【kd树】
- 【POJ3565】ANTS KM算法
- Eclipse使用时遇到的问题
- Paxos一致性算法(三)
- 使用Sentry集中化日志管理
- web基础 (二) html标签
- PHP 获取acm近期比赛
热门文章
- Linux上zookeeper+dubbo-admin的安装及使用
- 公司ES升级带来的坑怎么填?
- 团队作业第五次—项目冲刺-Day4
- 逆天的化妆CSS
- 代码移植的福音 namespace_alias
- Nacos集成Spring Cloud Gateway 基础使用
- Maven 的 classifier 的作用
- apache poi操作office文档----java在线预览txt、word、ppt、execel,pdf代码
- 一个简单 System.Threading.Tasks.Dataflow.TransformBlock 示例
- WPF Adorner 弹出式工具栏 例子