mysqlroute配置和使用
admin
2023-05-25 02:21:37
0

MySQL Router是MySQL官方推出的一个轻量级MySQL中间件是处于应用client和dbserver之间的轻量级代理程序,它能检测,分析和转发查询到后端数据库实例,并把结果返回给client。是mysql-proxy的一个替代品.但是和mysql-proxy有区别。mysqlroute使用了两个端口进行读写分离

默认端口号作用说明
7001默认的是读写端口mode = read-write默认情况下第一台主数据库为写主库,当第一台主数据库DOWN机后,第二台数据库被提升为主库,如果第一台不出问题,第二台是不会被使用的。可以作高可用使用
7002默认是读端口如果设置以后,根据设置的列表进行轮询使用

MySQL Router接受前端应用程序请求后,根据不同的端口来区分读写,把连接读写端口的所有写和查询发往主库,把连接只读端口的查询以轮询方式发往多个从库,从而实现读写分离的目的。读写返回的结果会交给MySQL Router,由MySQL Router返回给客户端的应用程序。 
我理解的是mysql-proxy在使用的时候与连接单台数据库操作一样,而mysql route则是把多台主机的读写集中在一起,进行读写分离,在使用的时候还是需要程序进行改动。具体性能测试,在接下的文章中会慢慢测试

安装可以使用多种方式,因为测试我选择了二进制包

安装包下载: 
http://dev.mysql.com/downloads/router/ 
文档: 
http://downloads.mysql.com/docs/mysql-router-en.pdf 
我选择了二进制安装: 
系统是centos7-1604-mini

1.下载

cd /usr/local/ && wget -c https://dev.mysql.com/get/Downloads/MySQL-Router/mysql-router-2.0.4-linux-glibc2.12-x86-64bit.tar.gz

cd /usr/local/ && tar -zxvf mysql-router-2.0.4-linux-glibc2.12-x86-64bit.tar.gz

ln -s   mysql-router-2.0.4-linux-glibc2.12-x86-64bit/  mysql-router

2.创建必要的文件,复制配置文件

mkdir /etc/mysql-route/

mkdir /var/log/mysql-route

chown mysql:mysql /var/log/mysql-route

cp /usr/local/mysql-router/share/doc/mysqlrouter/sample_mysqlrouter.ini /etc/mysql-route/mysqlrouter.conf

mysqlrouter.conf修改

[DEFAULT]logging_folder = /var/log/mysql-route

plugin_folder = /usr/local/mysql-router/lib/mysqlrouter

config_folder = /etc/mysql-route

runtime_folder = /var/run/ [logger]level = INFO

# 主节点故障转移配置

[routing:basic_failover]

# 写节点地址

bind_address=0.0.0.0

# 写节点端口

bind_port = 7001

# 模式,读写

mode = read-write

# 默认情况下第一台主数据库为写主库,当第一台主数据库DOWN机后,第二台数据库被提升为主库

destinations = 192.168.10.191:3306

# 从节点负载均衡配置

[routing:balancing]

# 绑定的IP地址

bind_address=0.0.0.0

# 监听的端口bind_port = 7002

# 连接超时时间

connect_timeout = 3

# 最大连接数

max_connections = 1024

# 后端服务器地址.默认读进行轮询

destinations = 192.168.10.192:3306,192.168.10.191:3306

# 模式:读还是写

mode = read-only

[keepalive]interval = 60

8、启动mysqlrouter

mysqlrouter --config /usr/local/mysqlrouter/etc/mysqlrouter.conf &

测试通过mysqlrouter这个中间件来连接mysql库

mysql -h227.0.0.1 -uappuser -p123456 -e"show databases;" -P7001


相关内容

热门资讯

涉霍尔木兹海峡谈判,美伊均称取... 据《纽约时报》报道,美国与卡塔尔官员8月4日表示,关于重新开放霍尔木兹海峡的谈判正在取得进展,但与伊...
“美军远程精确导弹几乎打光了” 当地时间8月4日,路透社援引三名知情人士消息报道称,美国陆军在对伊朗长达五个月的战争中消耗了其全球大...
蔡崇信前妻离婚后首亮相,和希拉... 当地时间8月3日晚,身为美国前国务卿兼前第一夫人的希拉里·克林顿,出现在纽约巴克莱中心,观看一场WN...
美国父亲发现11岁女儿遭性侵,... 8月4日消息,美国俄亥俄州爆出一桩极具争议的案件,一位父亲发现11岁女儿遭到侵害之后,没有第一时间完...
以总理:反对特朗普近期协议,哈... 据美联社当地时间8月4日报道,以色列总理内塔尼亚胡表示,在哈马斯完全解除武装之前,以色列军队不会从其...
美财长:本来还想写“和伊朗最高... 美国财政部长贝森特说,美国总统特朗普政府将“不惜一切代价”支持日本稳定汇市。他还幽默地回应了媒体拍到...
对伊战争消耗过大,美弹药库存告... 美伊战争已经持续近半年,战争大量消耗美军的关键弹药储备,西媒爆料称,美国弹药库存告急。美国总统特朗普...
华为E-band微波产品斩获2... 【CNMO科技消息】 近日,华为E-band微波产品RTN 3800凭借其卓越的设计理念和技术创新,...
原创 美... 当国际空间站走到退役那一天,能不能控制它撞向中国空间站?一些美国网络社区出现这种设想,乍看像在讨论航...
华灿光电:Micro LED通... 证券之星消息,华灿光电(300323)08月04日在投资者关系平台上答复投资者关心的问题。 投资者:...