MySQL Router 是为应用程序和 MySQL 之间提供透明路由的轻量级中间件,是 InnoDB 集群的一部分。
通过 MySQL Router 来构建高可用架构,可以简化应用程序开发,提高性能和可靠性。
推荐 MySQL Router 与应用程序部署在同一台服务器。
部署架构安装
下载软件源
访问 https://dev.mysql.com/downloads/repo/ 下载操作系统的软件源。
以 CentOS 7 为例,下载文件为 mysql57-community-release-el7-11.noarch.rpm
安装软件源
sudo yum localinstall mysql57-community-release-el7-11.noarch.rpm
安装 MySQL Router
sudo yum install mysql-router
生成配置
mysqlrouter --bootstrap localhost:3310 --directory /opt/myrouter --user mysqlrouter
- --bootstrap:指定 MySQL 集群主节点
- --directory:指定配置文件目录
- --user:指定配置文件拥有人
加入 --directory 可以指定配置文件生成目录。
加入 --conf-use-sockets 可以启用 Unix 域套接字连接。
生成配置文件如下
- data:数据文件目录
- log:日志文件目录
- mysql.sock:Unix 域套接字(读写)
- mysqlro.sock:Unix 域套接字(只读)
- mysqlrouter.conf:配置文件
- mysqlrouter.key:加密主键
- mysqlrouter.pid:PID 文件
- mysqlx.sock:X 协议的Unix 域套接字(读写)
- mysqlxro.sock:X 协议的 Unix 域套接字(只读)
- run:运行文件目录
- start.sh:启动脚本
- stop.sh:停止脚本
启动与停止
执行 start.sh
和 stop.sh
脚本。
注意
- 与直连 MySQL 相比,性能损耗大概 1 %。
- 应用程序连接 MySQL 出现错误时,需要应用程序发起重试。
- 最大支持 500 连接数。
网友评论