MySQL路由器的部署与读写分流配置指南

MySQL路由器的部署流程

  1. 解压安装包并调整目录结构
root@ubuntu06:/usr/local/mysql_install_package# tar -xvf mysql-router-8.3.0-linux-glibc2.28-x86_64.tar.xz
root@ubuntu06:/usr/local/mysql_install_package# mv mysql-router-8.3.0-linux-glibc2.28-x86_64 mysql-router8.3
root@ubuntu06:/usr/local/mysql_install_package# cd mysql-router8.3
  1. 建立服务所需目录
root@ubuntu06:/usr/local/mysql-router8.3# mkdir router_storage
root@ubuntu06:/usr/local/mysql-router8.3# cd router_storage
root@ubuntu06:/usr/local/mysql-router8.3/router_storage# mkdir data_dir log_files config_files runtime_files

路由配置文件定制

基于主从架构配置路由参数

[GLOBAL]
log_directory = /usr/local/mysql-router8.3/router_storage/log_files
extension_dir = /usr/local/mysql-router8.3/lib/mysqlrouter
configuration_dir = /usr/local/mysql-router8.3/router_storage/config_files
runtime_dir = /usr/local/mysql-router8.3/router_storage/runtime_files
data_dir = /usr/local/mysql-router8.3/router_storage/data_dir
[LOG_SETTINGS]
log_level = INFO
log_file = router.log
time_format = second
[WRITE_ROUTING]
listen_address = 0.0.0.0
service_port = 7001
selection_policy = primary-first
access_mode = read-write
target_servers = 192.168.152.112:8000,192.168.152.113:8000
[READ_ROUTING]
listen_address = 0.0.0.0
service_port = 7002
access_mode = read-only
replica_servers = 192.168.152.113:8000,192.168.152.112:8000
[HEARTBEAT]
check_interval = 60

系统服务配置

创建systemd管理单元

[Unit]
Name=MySQL Router Service
Requires=network-online.target
Requires=syslog.service
[Service]
Type=notify
RunAs=mysql
Group=mysql
StartCommand=/usr/local/mysql-router8.3/bin/mysqlrouter --config /usr/local/mysql-router8.3/router_storage/config_files/router.conf
FileDescriptorLimit=100000
RestartPolicy=on-abnormal
PrivateTmp=yes
[Install]
DefaultTarget=multi-user.target

更新系统服务配置

systemctl reload-daemon

初次启动时可能出现权限问题,需调整目录所有权
MySQL路由器的部署与读写分流配置指南
授权后服务正常启动
MySQL路由器的部署与读写分流配置指南

读写分流功能验证

  1. 写操作验证(7001端口)
    MySQL路由器的部署与读写分流配置指南
  2. 读操作验证(7002端口)
    注意:连接建立时进行负载均衡,后续请求保持固定节点
    MySQL路由器的部署与读写分流配置指南
  3. 故障自动切换演示
    MySQL路由器的部署与读写分流配置指南

部署建议

MySQL路由器作为轻量级中间件,不存储业务数据,建议与应用服务共同部署。官方推荐架构示意图:
MySQL路由器的部署与读写分流配置指南

版权声明:程序员胖胖胖虎阿 发表于 2025年5月12日 上午5:50。
转载请注明:MySQL路由器的部署与读写分流配置指南 | 胖虎的工具箱-编程导航

相关文章

暂无评论

暂无评论...