配置读写分离服务
安装软件
[root@maxscale77 mysql]# yum -y install maxscale-2.1.2-1.rhel.7.x86_64.rpm
[root@maxscale77 mysql]# ls /etc/maxscale.cnf //主配置文件
[root@maxscale77 mysql]# ls /var/log/maxscale/ //日志文件
修改配置文件
[maxscale] //服务线程
threads=auto
[server1] //第一台数据库服务器
type=server
address=192.168.4.11
port=3306
protocol=MySQLBackend
[server2] //第二台数据库服务器
type=server
address=192.168.4.22
port=3306
protocol=MySQLBackend
[MySQL Monitor] //指定监控数据库服务器server1和server2
type=monitor
module=mysqlmon
servers=server1,server2
user=maxscalemon //监控用户
passwd=123qqq...A //密码
monitor_interval=10000
[Read-Write Service] //定义读写分离服务
type=service
router=readwritesplit
servers=server1,server2
user=maxscalerouter //路由用户
passwd=123qqq...A //密码
max_slave_connections=100%
[MaxAdmin Service] //定义管理服务
type=service
router=cli
[Read-Write Listener] //定义读写分离服务端口
type=listener
service=Read-Write Service
protocol=MySQLClient
port=4006 //端口号
[MaxAdmin Listener] //定义管理服务端口
type=listener
service=MaxAdmin Service
protocol=maxscaled
socket=default
port=4016 //端口号
配置数据库服务器
创建用户:在主服务器上添加,从服务器上查看
主服务器11上创建:
mysql> grant replication
slave,replication client on *.* to maxscalemon@"%" identified by "123qqq...A";
mysql> grant select on mysql.* to maxscalerouter@"%" identified by "123qqq...A";
从服务器上22上查看授权用户:
[root@mysql22 ~]# mysql -uroot -p123qqq...A
mysql> select user,host from mysql.user where user like"maxscale%";

启动maxscale服务
启动服务
[root@maxscale77 ~]# maxscale -f /etc/maxscale.cnf
查看服务信息(进程和端口)
[root@maxscale77 ~]# ps -C maxscale
PID TTY TIME CMD
23184 ? 00:00:00 maxscale
[root@maxscale77 ~]# netstat -ntulp | grep maxscale

在maxscale服务本机访问管理服务,查看监控信息
[root@maxscale77 ~]# maxadmin -uadmin -pmariadb -P4016
MaxScale> list servers

MaxScale> exit
网友评论