Welcome 微信登录

首页 / 数据库 / MySQL / 搭建MySQL代理服务器实现读写分离+主从同步

实验需求:1.配置2台MySQL服务器(192.168.100.2,192.168.100.3)+1台代理服务器(192.168.100.1),实现MySQL代理的读写分离。2.用户只需要访问MySQL代理服务器,实际的SQL查询、写入操作交给后台的2台MySQL服务器来完成。3.2台MySQL服务器实现主从同步,其中Master服务器允许SQL查询、写入,Slave服务器只允许SQL查询。Ubuntu下Nginx做负载实现高性能WEB服务器5---MySQL主主同步 http://www.linuxidc.com/Linux/2012-06/61687p5.htm生产环境MySQL主主同步主键冲突处理 http://www.linuxidc.com/Linux/2013-07/86890.htmMySQL主从失败 错误Got fatal error 1236 http://www.linuxidc.com/Linux/2012-02/54729.htmMySQL主从复制,单台服务器上实施 http://www.linuxidc.com/Linux/2013-03/81913.htm一 .MASTER数据库服务器(192.168.100.2)的配置1.安装软件包(本实验采用MySQL5.6版本)# rpm -qa | grep -i mysqlMySQL-shared-5.6.15-1.el6.x86_64MySQL-devel-5.6.15-1.el6.x86_64MySQL-embedded-5.6.15-1.el6.x86_64MySQL-test-5.6.15-1.el6.x86_64MySQL-server-5.6.15-1.el6.x86_64MySQL-client-5.6.15-1.el6.x86_64MySQL-shared-compat-5.6.15-1.el6.x86_64 
2.启动服务并登录数据库本机对代理服务器做用户授权# service mysql start && chkconfig mysql onmysql> grant  all  on *.*  to  proxyuser@"192.168.100.1" identified  by "123456";3.创建测试数据库和表mysql> create database proxydb;mysql> create table proxydb.proxytab(id int);mysql> insert into proxydb.proxytab values (2);二 .SLAVE数据库服务器(192.168.100.3)的配置1.安装软件包2.启动服务并登录数据库本机对代理服务器做用户授权# service mysql start && chkconfig mysql onmysql> grant  all  on *.*  to  proxyuser@"192.168.100.1" identified  by "123456";  //与MASTER数据库服务器做一样的授权3.创建测试数据库和表mysql> create database proxydb;                  //创建一样的库和表mysql> create table proxydb.proxytab(id int);mysql> insert into proxydb.proxytab values (3); //为了能测试区分2台不同数据库服务器,先插入不同数据三.MySQL代理服务器配置1.在做代理服务器上测试授权用户能否登录2台数据库服务器# mysql -h192.168.100.2 -uproxyuser -p123456        //登录MASTER服务器mysql> select * from proxydb.proxytab;+------+| id  |+------+|    2 |+------+1 row in set (0.00 sec) 
# mysql -h192.168.100.3 -uproxyuser -p123456          //登录SLAVE服务器mysql> select * from proxydb.proxytab;+------+| id  |+------+|    3 |+------+1 row in set (0.00 sec)2.释放3306端口# service mysqld stop# chkconfig mysqld off# netstat -tulnp | grep :33063.安装提供代理服务器的软件包# tar zxvf mysql-proxy-0.8.3-linux-rhel5-x86-64bit.tar.gz# mv mysql-proxy-0.8.3-linux-rhel5-x86-64bit /usr/local/mysql-proxy  //此包为绿色免安装# yum -y install lua //此软件使用LUA脚本语言,因此需要安装好lua软件包代理服务启动时 会设置  负责写的数据库  负责读数据库服务器                        调用脚本来区分用户的访问类型                        指定自己监听的端口4.启动代理服务cd /usr/local/mproxy/bin/使用bin目录下的mysql-proxy脚本来启动代理服务# ./mysql-proxy -P 192.168.100.1:3306 -r  192.168.100.3:3306  -b 192.168.100.2:3306  -s /usr/local/mysql-proxy/share/doc/mysql-proxy/rw-splitting.lua &主要命令选项:-P:指定代理监听的IP地址、端口-r:指定读服务器的IP地址、端口-b:指定写服务器的IP地址、端口-s:指定lua脚本文件--keepalive:如果服务进程崩溃,尝试重启此进程5.查看代理进程是否运行# jobs# netstat -tulnp | grep :3306tcp        0      0 192.168.100.1:3306          0.0.0.0:*                  LISTEN      3314/mysql-proxy   //代理进程必须处于运行状态,客户端才能通过代理服务访问到后端的数据库服务器。6.查看读写分离脚本# vim /usr/local/mysql-proxy/share/doc/mysql-proxy/rw-splitting.lua…… 40                min_idle_connections = 4,        //默认并发请求大于4才实行读写分离 41                max_idle_connections = 8,  更多详情见请继续阅读下一页的精彩内容: http://www.linuxidc.com/Linux/2014-05/102265p2.htm
  • 1
  • 2
  • 下一页
CentOS 6.5 搭建phpMyAdmin管理平台MySQL数据备份与恢复相关资讯      MySQL主从同步  MySQL读写分离 
  • Ubuntu下MySQL主从同步配置  (今 14:59)
  • MySQL生产库主从重新同步操作注意  (09月01日)
  • Linux下MySQL主从同步配置  (08月23日)
  • CentOS搭建MySQL主从复制,读写分  (09月12日)
  • MySQL主从同步校验与重新同步  (09月01日)
  • CentOS下基于Amoeba实现MySQL读写  (08月08日)
本文评论 查看全部评论 (0)
表情: 姓名: 字数


评论声明
    版权所有©石家庄振强科技有限公司2024 冀ICP备08103738号-5 网站地图