mysql读写分离

  mysql读写分离(maxscale + 主从同步 ) 首先要配置主从同步

  把客户端访问数据库的读请求和写请求,分别请求不同数据库服务器去响应。

  减轻单台数据库服务器的并发访问压力

  

  1.使用代理机器运行读写分离功能的服务

  2.装包

  3.修改配置文件

  4.启动服务

  5.测试  在客户主机上访问服务器

  

  1.下载包  wget  https://downloads.mariadb.com/MaxScale/2.1.2/centos/7/x86_64/maxscale-2.1.2-1.centos.7.x86_64.rpm

  2.rpm -ivh maxscale-------

  3.修改配置  vi /etc/maxscale.cnf

  4. 配置服务器

  

  几台服务器,就配置几个,修改里面的端口

  5.设定用户名称和密码,并在servers 中添加服务名称

  

  6.到两台主机上面分别给这个用户进行授权

  创建监控用户(检查服务状态和主从同步结构状态)

  grant replication slave,replication client on *.* to scalemon@'%' identified by "123456";

  创建路由用户(检查客户端访问数据库服务时,使用的连接用户是否在数据库上存在)

  grant select on mysql.* to maxscale@'%' identified by "123456";

  7.设置管理的端口

  

   8. 启动服务     maxscale --config=/etc/maxscale.cnf

  9.进入到maxscale 中maxadmin -uadmin -pmariadb -P4007      默认密码是 mariadb

  10.查看服务  list servers

  11、进行测试是否成功完成读写分离

  ①在服务器上面添加访问数据库授权用户

  grant all on *.* to student@"%" identified by "123456";

  ②在maxscale 主机上面执行 mysql -ustudent -p -P4006  进入到mysql命令中

  也就是说,访问数据的时候,访问的是插件的服务器,端口是4006 

  那么怎么测试,插件服务器的数据,就是从库的数据呢?   我们在从库中增加一条数据,看第三方插件库中有没有?结果是,有,但是宿主机上面没有。

  

  

  

  

  

  

  

原文地址:https://www.cnblogs.com/chengyangyang/p/10689382.html