MySQL Router是一个轻量级的中间件,提供了应用程序与后端数据库的透明路由,是mysql用来实现负载均衡和高可用功能。同时router也提供了使用fabric 高可用的方式。
我们先去mysql官网下载mysql router
配置mysql router
01.tar -zxvf mysql-router-8.0.11-el6-x86-64bit.tar.gz02.mv mysql-router-8.0.11-el6-x86-64bit /usr/local/mysql-router
配置日志目录和配置文件目录
01.cd /usr/local/mysql-router02.mkdir -p logs03.mkdir -p etc
复制配置模版
01.cp share/doc/mysqlrouter/sample_mysqlrouter.ini ./etc/mysqlrouter.ini
配置项内容如下:
01.[DEFAULT]02.logging_folder = /usr/local/mysql-router/logs03.plugin_folder = /usr/local/mysql-router/lib/mysqlrouter04.config_folder = /usr/local/mysql-router/etc05.runtime_folder = /usr/local/mysql-router/run06.[logger]07.level = INFO08.[routing:read_write]09.bind_address = 192.168.128.14010.bind_port = 700111.mode = read-write12.destinations = 192.168.128.131:3306 #读写库,多个读写库用逗号隔开13.max_connections = 6553514.max_connect_errors = 10015.client_connect_timeout = 916.[routing:read_only]17.bind_address = 192.168.128.14018.bind_port = 700219.mode = read-only20.destinations = 192.168.128.132:3306,192.168.128.133:3306 #读库,多个只读库用逗号隔开21.max_connections = 6553522.max_connect_errors = 10023.client_connect_timeout = 924.[keepalive]25.interval = 60
启动mysql router
01.cd /usr/local/mysql-router/bin02../mysqlrouter -c /usr/local/mysqlrouter/etc/mysqlrouter.ini &
注:参数说明
01.bind_address 指定mysql router绑定的服务器02.bind_port 指定绑定的端口03.destinations 指定后端mysql server 列表 (ip:port 格式,使用逗号分隔)04.mode 读写模式(read-write, read_only)
还有一点需要注意,要实现同时现在mysql的读写分离和负载均衡需要在框架上进行拆分读写操作,因为mysql router路由实现读写分离只有需要配置两条路由,一条用来读写,一条用来只读的负载均衡,这样会有两个监听的连接端口,一般框架都自带读写分离模式,分别对应两个开放的监听端口来各自操作,单纯的实现读写分离还是建议使用mysql-proxy实现。
mysql-proxy的配置请查看这里:https://sulao.cn/post/338
内容版权声明:除非注明,否则皆为本站原创文章。
转载注明出处:https://sulao.cn/post/511
评论列表