mysql router 介绍_mysql router

[TOC]

mysql router 高可用架构原理

参考资料mysql router 官方文档

黄锡峰深入浅出MySQL高可用架构第19讲(出钱买的正版,所以应该可以截图)

1. 概述

1-1 存在的意义

官档头一段说的很清楚了 MySQL路由器是InnoDB集群的一部分,并且是一个轻量级的中间件,它提供了透明的路由在您的应用程序和后端MySQL服务器之间。它可以广泛用于各种各样的不同的使用场景,例如提供高可用性和可伸缩性通过有效地将数据库请求指向适当的后端MySQL服务器.

我们生产中一般简单的读写分离结构,一般会存在以下一些问题

为了解决以上的问题,于是官方有了mysql route这个玩意

2-2 读写分离的原理

2.部署

简单的部署一下

#下载

[root@localhost~]#wget https://dev.mysql.com/get/Downloads/MySQL-Router/mysql-router-2.1.6-linux-glibc2.12-x86-64bit.tar.gz

#启动一台容器

[root@localhost~]#docker run-itd--net=none--privileged=true-v/sys/fs/cgroup:/sys/fs/cgroup:ro--name mysql_router-h mysql_router centos_ali_7:latest/usr/sbin/init

a91bc7685250655889f0e8216f71b075fe7df66b64a896727067febb65f08561

[root@localhost~]#pipework br0 mysql_router172.16.30.17/24@172.16.30.254

#拷贝到容器里面

[root@localhost~]#docker cp./mysql-router-2.1.6-linux-glibc2.12-x86-64bit.tar.gz mysql_router:/mnt

#进入容器,解压,重命名一把梭

[root@localhost~]#dockerexec-it mysql_router bash

[root@mysql_router/]#cd

[root@mysql_router~]#tar xf/mnt/mysql-router-2.1.6-linux-glibc2.12-x86-64bit.tar.gz-C/usr/local/

[root@mysql_router~]#cd!$

cd/usr/local/

[root@mysql_routerlocal]#mv mysql-router-2.1.6-linux-glibc2.12-x86-64bitmysql-router

[root@mysql_routerlocal]#cd mysql-router/

[root@mysql_router mysql-router]#ls

bin  data  include  lib  run  share

#安装必要的文件

[root@mysql_router mysql-router]#yum install vim-y

#复制配置文件

[root@mysql_router mysql-router]#cp share/doc/mysqlrouter/

License.txt              README.txt               sample_mysqlrouter.conf  sample_mysqlrouter.init

[root@mysql_router mysql-router]#cp share/doc/mysqlrouter/sample_mysqlrouter.conf ect/mysqlrouter.conf

[root@mysql_router mysql-router]#cd/etc/

# 默认配置参数没几个,简单的说下

[root@mysql_router ect]#vim mysqlrouter.conf

[DEFAULT]

logging_folder=/usr/local/mysql-router/#日志文件夹路径

plugin_folder=/usr/local/mysql-router/lib/mysqlrouter#插件文件夹路径

config_folder=/usr/local/mysql-router/ect#配置文件夹路径

runtime_folder=/var/run#pid文件夹路径,即允许的文件夹路径

[logger]

level=INFO#日志运行级别

[routing:basic_failover]#故障切换

# To be more transparent, use MySQL Server port 3306

bind_address=172.16.30.17#类似VIP

bind_port=7001#端口

mode=read-write#读写

destinations=172.16.30.18:3306,172.16.30.19:3306172.16.30.21:3306#后端服务器

[routing:balancing]#负载均衡模式

bind_address=172.16.30.17

bind_port=7002

connect_timeout=3

max_connections=1024

mode=read-only#只读

destinations=172.16.30.18:3306,172.16.30.19:3306172.16.30.21:3306#后端服务器

#配置三台读写分离的服务器(略,很简单就不啰嗦了)

#简单的部署完成,明天来测试和在深入一点

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值