MySQL之MaxScale实现读写分离
1.前提工作
了解并已部署好 主从复制
2.下载MaxScale中间件
https://downloads.mariadb.com/MaxScale/
在线下载
wget https://dlm.mariadb.com/1065384/MaxScale/2.3.20/centos/7/x86_64/maxscale-2.3.20-1.centos.7.x86_64.rpm
安装
yum -y install maxscale-2.3.20-1.centos.7.x86_64.rpm
3.master主库创建用户
已实现主从复制:主库创建的用户,能同步到从库上
创建监控用户
create user 'maxmon'@'%' identified by 'maxmon';
ALTER USER 'maxmon'@'%' IDENTIFIED WITH mysql_native_password BY 'maxmon';
grant replication slave,replication client on *.* to 'maxmon'@'%';
创建路由用户
create user 'maxrou'@'%' identified by 'maxrou';
ALTER USER 'maxrou'@'%' IDENTIFIED WITH mysql_native_password BY 'maxrou';
grant all on *.* to 'maxrou'@'%';
flush privileges;
4.配置MaxScale
vim /etc/maxscale.cnf
找到 [server1] 部分,修改其中的 address 和 port,指向 master 的 IP 和端口
复制2次 [server1] 的整块儿内容,改为 [server2] 与 [server3],同样修改其中的 address 和 port,分别指向 slave1 和 slave2
[MariaDB-Monitor] 部分,修改 servers 为 server1,server2,server3,修改 user 和 password 为之前创建的监控用户的信息
注释掉[Read-Only-Service] 部分,读写由maxscale控制即可
[Read-Write Service] 部分,修改 servers 为 server1,server2,server3,修改 user 和 password 为之前创建的路由用户的信息
注释 [Read-Only-Listener] 部分,在 [MaxAdmin-Listener] 最后添加port=6603
5.启动MaxScale
创建maxscale相关目录,所属用户是mysql
mkdir /usr/local/mysql/maxscale
mkdir /usr/local/mysql/maxscale/data
mkdir /usr/local/mysql/maxscale/logs
mkdir /usr/local/mysql/maxscale/cache
再配置下
vim /etc/maxscale.cnf
logdir=/usr/local/mysql/maxscale/logs
datadir=/usr/local/mysql/maxscale/data
piddir=/usr/local/mysql/maxscale/logs
cachedir=/usr/local/mysql/maxscale/cache
启动,不能以root用户启动,这里指定mysql用户
maxscale --config=/etc/maxscale.cnf --user=mysql
netstat -ntelp
登录MaxScale管理器
maxadmin --user=admin --password=mariadb
查看服务
list servers
6.测试
创建测试用户
create user 'rtest'@'%' identified by 'rtest';
ALTER USER 'rtest'@'%' IDENTIFIED WITH mysql_native_password BY 'rtest';
grant select,insert on testdb.* to 'rtest'@'%';
flush privileges;
mysql 连接 MaxScale
mysql -urtest -prtest -h'192.168.192.128' -P4006
查看当前服务器名称
Select @@hostname;
开启事务,MaxScale切换到master
start transaction;
回滚
rollback;
写操作走主库,读操作走从库,能实现读写分离
相关链接
首页
上一篇:主从复制
下一篇:用户权限管理
MySQL之MaxScale实现读写分离相关推荐
- MySQL-通过MaxScale实现读写分离初探
文章目录 生猛干货 官方文档 主从复制配置的目的之一----读写分离 为什么要进行读写分离 读写分离的实现方式 程序开发 中间件maxScale 实现读写分离 使用中间件实现读写分离的优缺点 MaxS ...
- Maxscale安装-读写分离(1)
前言 关于MySQL中间件的产品也很多,之前用过了360的Atlas.玩过MyCat.这边我选择 Maxscale的原因就是功能能满足需求,也看好他的未来发展. 其实有关于如何安装 Maxscale的 ...
- 【纯干货】Amoeba实现MySQL主从同步与读写分离
[纯干货]Amoeba实现MySQL主从同步与读写分离 一.简介 amoeba简介 Amoeba(变形虫)项目,该开源框架于2008年开始发布一款 Amoeba for Mysql软件.这个软件致力于 ...
- mysql sharding 读取_MySQL读写分离(一)——sharding-jdbc
sharding-sphere是强大的读写分离.分表分库中间件,sharding-jdbc是sharding-sphere的核心模块.官方网站 springboot项目中集成sharding-jdbc ...
- mysql主从复制中间件_linux下mysql主从复制(第二篇读写分离) mycat 中间件
linux下mysql主从复制(第二篇读写分离) mycat 中间件 接着上篇文档补全,mysql 读写分离,在上篇文章案例下准备好Mycat-server-1.4-release-201510192 ...
- MySQL的主从复制与读写分离技术实例(一)主从复制
系统版本:CentOS 6.5 MySQL版本:mysql-5.5.38 生产环境下,如果对同一个数据库服务器即做写服务又做读服务,无论是从安全性.高可用性还是高并发等各个角度都不能满足实际需求, ...
- 数据库应用——Atlas代理MySQL集群实现读写分离
Atlas代理MySQL集群实现读写分离 一.Atlas简介和架构 1.1 环境准备 1.2 配置时间服务器 二.主服务器配置 2.1 master节点1的配置 2.2 master节点2的配置 2. ...
- MySQL之——MSS主从复制(读写分离)实现
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/52746393 前面,在博文<MySQL之--MS主从复制(读写分离)实现&g ...
- (含PPT)MySQL托管服务架构及读写分离的优化
关注我们获得更多内容 内容来源:2017 年 08 月 24 日,微软中国首席产品经理宋青见在"ODF 2017开源数据库论坛(北京)"进行<云原生的MySQL托管服务架构及 ...
最新文章
- Jsoncpp 在C++开发中的一些使用记录
- PyTorch学习笔记——pytorch图像处理(transforms)
- Java程序运行的内存分配
- SmartQuery WebPart 2.0 发布。
- 【Qt】2D绘图之图形视图框架(一)
- zookeeper的ZAB协议学习
- 中文TeX的编辑环境推荐
- linux判断改行符_Linux判断符如何使用?
- 哪些专业是毕业即失业?
- 理解偏倚:可靠结果的先决条件
- HDOJ-1272 小希的迷宫
- ORA-03113:通信通道的文件结尾-完美解决方案
- Java软件开发工程师级别
- 整理六百篇web前端知识混总
- html页面图片可点击事件,html中如何给图片添加点击事件的详解
- 运用PS制作3G、4G、5G、6G矢量图方法
- arm9芯片包括哪些?arm9如何应用?
- 数学公式编辑器mathtype安装包免费版下载
- ECMAScript 面试题目
- Ember.js如何与后端服务交互?adapter、store、ember data关系揭秘 1