安装 MaxScale
Posted wyju
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了安装 MaxScale相关的知识,希望对你有一定的参考价值。
MaxScale只在一台虚拟机上上安装就好,我安装到了slave2上
我的虚拟机时
192.168.1.101 master
192.168.1.102 slave1
192.168.1.103 slave2
1.环境准备,先把主从复制启动
https://blog.csdn.net/weixin_45955039/article/details/124196627?spm=1001.2014.3001.5501
2.以 centos 7 为例安装。下载安装包
https://downloads.mariadb.com/MaxScale/2.1.2/centos/7/x86_64/
3.安装依赖
yum install libaio.x86_64 libaio-devel.x86_64 novacom-server.x86_64 libedit -y
4.上传maxscale-2.1.2-1.centos.7.x86_64.rpm包
5.安装
rpm -ivh maxscale-2.1.2-1.centos.7.x86_64.rpm
6.配置MaxScale
6.1创建监控用户,确认主从服务正常
create user 'maxmon'@'%' identified by '123456';
grant replication slave,replication client on *.* to 'maxmon'@'%';
6.2创建监控用户,确认主从服务有可用用户
create user 'maxrou'@'%' identified by '123456';
grant select on mysql.* to 'maxrou'@'%';
flush privileges;
6.3修改maxscale配置文件
vim /etc/maxscale.cnf
6.3.1 找到[server1]修改address,并复制一份[server1]修改address
[server1]
type=server
address=192.168.1.101
port=3306
protocol=MySQLBackend
[server2]
type=server
address=192.168.1.102
port=3306
protocol=MySQLBackend
6.3.2找到 [MySQL Monitor] 部分,修改 servers 为 server1,server2,修改 user 和 passwd 为之前创建的监控用户的信息(maxmon,123456)
[MySQL Monitor]
type=monitor
module=mysqlmon
servers=server1,server2
user=maxmon
passwd=123456
monitor_interval=10000
6.3.3找到 [Read-Write Service] 部分,修改 servers 为 server1,server2,修改 user 和 passwd 为之前创建的路由用户的信息(maxrou,123456)
[Read-Write Service]
type=service
router=readwritesplit
servers=server1,server2
user=maxrou
passwd=123456
max_slave_connections=100%
6.3.4找到以下两个模块删除
6.3.5添加端口号是4010
[MaxAdmin Listener]
type=listener
service=MaxAdmin Service
protocol=maxscaled
socket=default
port=4010
7.启动MaxScale
maxscale --config=/etc/maxscale.cnf
8.查看 MaxScale 的响应端口
netstat -ntelp
9.登录 MaxScale 管理器,查看一下数据库连接状态,默认的用户名和密码是 admin/mariadb
maxadmin -uadmin -pmariadb -P4010
10.查看是否连接master和slave
list servers
11.测试
11.1先在 master 上创建一个测试用户
create user 'test'@'%' identified by '123456';
grant ALL PRIVILEGES on *.* to 'test'@'%';
11.2、使用 Mysql 客户端到连接 MaxScale
任何一台虚拟机都可以
mysql -utest -p'123456' -h'192.168.1.103' -P4006
11.3、执行查看数据库服务器名的操作来知道当前实际所在的数据库
Select @@hostname;
begin;
11.4 在master插入数据,在slave,在4006 查询可以查到数据。
11.5在slave写入数据,在master查不到,在4006不可以查到数据
以上是关于安装 MaxScale的主要内容,如果未能解决你的问题,请参考以下文章