MySQL Router 安裝與配置
阿新 • • 發佈:2022-05-02
1.9. MySQL Router
1.9.1. 安裝 MySQL Router
# yum install mysql-router -y
MySQL Router 軟體包中所含的檔案。
[root@netkiller ~]# rpm -ql mysql-router-2.0.3-1.el7 /etc/mysqlrouter /etc/mysqlrouter/mysqlrouter.ini /usr/lib/systemd/system/mysqlrouter.service /usr/lib/tmpfiles.d/mysqlrouter.conf /usr/lib64/libmysqlharness.so /usr/lib64/libmysqlharness.so.0 /usr/lib64/libmysqlrouter.so /usr/lib64/libmysqlrouter.so.1 /usr/lib64/mysqlrouter /usr/lib64/mysqlrouter/fabric_cache.so /usr/lib64/mysqlrouter/keepalive.so /usr/lib64/mysqlrouter/logger.so /usr/lib64/mysqlrouter/mysql_protocol.so /usr/lib64/mysqlrouter/routing.so /usr/sbin/mysqlrouter /usr/share/doc/mysql-router-2.0.3 /usr/share/doc/mysql-router-2.0.3/License.txt /usr/share/doc/mysql-router-2.0.3/README.txt /var/log/mysqlrouter /var/run/mysqlrouter
1.9.2. 配置 MySQL Router
預設配置
# cat /etc/mysqlrouter/mysqlrouter.ini # Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; version 2 of the License. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA # # MySQL Router configuration file # # Documentation is available at # http://dev.mysql.com/doc/mysql-router/en/ [DEFAULT] logging_folder = /var/log/mysqlrouter/ plugin_folder = /usr/lib64/mysqlrouter runtime_folder = /var/run/mysqlrouter config_folder = /etc/mysqlrouter [logger] level = info # If no plugin is configured which starts a service, keepalive # will make sure MySQL Router will not immediately exit. It is # safe to remove once Router is configured. [keepalive] interval = 60
1.9.2.1. 主備配置
適用於 MySQL Master-Master / Master-Slave 方案,當一臺Master出現故障後另一臺Master或者Slave接管
[routing:failover]
bind_address = 192.168.0.5
bind_port = 3306
max_connections = 1024
mode = read-write
destinations = 192.168.0.10:3306,192.168.0.11:3306
1.9.2.2. 負載均衡配置
主要用於輸在均衡
[routing:balancing] bind_address = 192.168.0.5 bind_port = 3307 connect_timeout = 3 max_connections = 1024 mode = read-only destinations = 192.168.0.20:3306,192.168.0.21:3310
1.9.3. MySQL Router , Haproxy,LVS 的選擇
MySQL Router目前仍在成長中,如果你只需要負載均衡與主備,那麼LVS效能更高,Haproxy也更成熟。
節選擇《Netkiller MySQL 手札》