美文网首页
BinlogServer 之 MaxScale 介绍和简单部署手

BinlogServer 之 MaxScale 介绍和简单部署手

作者: 再见蓝猫 | 来源:发表于2019-12-17 17:00 被阅读0次

Maxscale--binlogserver 介绍和简单部署手册

一、Maxscale介绍

MariaDB MaxScale:号称世界上最先进的数据库代理,防火墙和查询路由器

MariaDB MaxScale是MariaDB平台的基本组件。它不仅为关键任务应用程序提供企业功能,包括自动故障转移,数据屏蔽和拒绝服务保护,而且还支持基于工作负载的查询路由,以进行混合事务/分析处理。拥有企业订阅的所有客户均可使用MariaDB MaxScale。

目前最新版本为2.4.2

我们用来搭建binlogserver,  经过maxscale 同步后的binlog  与主库完全保持一致, 它的工作是只将主库的binlog 拉去到本地,对位点和内容不做任何改变。

我们用到的是maxscale  里的  Binlogrouter模块。binlogrouter是MariaDB

MaxScale的复制协议代理模块,此模块允许 MaxScale连接到主服务器并检索二进制日志,而从属服务器可以连接到 MaxScale,就像它们连接到普通主服务器一样。

如果主服务器出现故障,则从服务器仍可以连接到 MaxScale并读取二进制日志。您可以切换到新的主服务器,而没有从服务器通知实际的主服务器已更改。这允许在复制优先级较高的情况下使用更高可用性的复制设置。

二、MaxScale安装部署手册

1、下载 rpm 包, 报地址为:https://dlm.mariadb.com/758925/MaxScale/2.4.2/centos/7/x86_64/maxscale-2.4.2-1.centos.7.x86_64.rpm

rpm -ivhmaxscale-2.4.2-1.centos.7.x86_64.rpm安装即可。

2、修改配置文件, /etc/maxscale.cnf 

,  我这边配置从2台数据库主库同步binlog日志,具体配置如下:

[maxscale]

threads=auto

[Replication1]

type=service

router=binlogrouter

user=maxscale

password=maxscale

server_id=3

binlogdir=/data/maxscale/binlogserver_1

mariadb10-compatibility=0

slave_hostname=master_slave

transaction_safety=on

heartbeat=30

send_slave_heartbeat=1

[Replication2]

type=service

router=binlogrouter

user=maxscale

password=maxscale

server_id=4

binlogdir=/data/maxscale/binlogserver_2

mariadb10-compatibility=0

slave_hostname=sso_slave

transaction_safety=on

heartbeat=30

send_slave_heartbeat=1

[Replication-Listener1]

type=listener

service=Replication1

protocol=MySQLClient

port=5308

[Replication-Listener2]

type=listener

service=Replication2

protocol=MySQLClient

port=5309

[MaxAdminService]

type=service

router=cli

[MaxAdminListener]

type=listener

service=MaxAdminService

protocol=maxscaled

socket=default

配置文件附件:

3、创建binlog 存储目录

mkdir /data/maxscale/binlogserver_1

mkdir /data/maxscale/binlogserver_2

创建主库 1 的master.ini info信息。

touch /data/maxscale/binlogserver_1/master.ini

具体配置如下:

[binlog_configuration]

master_host=10.80.10.226

master_port=3306

master_user=repl

master_password=repl

master_heartbeat_period=300

master_connect_retry=60

filestem=mysql-bin

创建主库 2 的master.ini info信息

touch /data/maxscale/binlogserver_2/master.ini

具体配置如下:

[binlog_configuration]

master_host=10.80.10.224

master_port=3306

master_user=repl

master_password=repl

master_heartbeat_period=300

master_connect_retry=60

filestem=mysql-bin

修改目录权限:

chown -R maxscale:maxscale /data/maxscale/

4、启动maxscale

systemctl start maxscale

查看 /var/log/maxscale/maxscale.log  日志, 确认启动成功, 但此时日志里可能会报错,因为 我们还没有设置同步主库的位点信息,  如果未设置,maxscale会从 mysql-bin.000001 开始同步。

5、登陆不同监听端口,设置同步位点信息

 以master1 为例, 其余类似。

输入密码后进入,maxscale 控制台, 账号密码为/etc/maxscale.cnf 里的配置。

查看主库的位点信息, 然后在这里设置同步slave,

CHANGE MASTER TO MASTER_HOST='xxxx',MASTER_USER='master-user',MASTER_PASSWORD='master-pwd',MASTER_LOG_FILE='master_logfile', MASTER_LOG_POS=mater_pos, MASTER_PORT=3306;

START SLAVE;

SHOW SALVE STATUS; 可以看到是否开始同步,

同时查看  /data/maxscale/binlogserver_1  下的文件,可以看到, binlog文件已经生成,且和主库完全保持一直。

至此binlog server 搭建完成, 其他的架构扩展,均与此安装步骤类似, 这里不再详细介绍。

相关文章

  • BinlogServer 之 MaxScale 介绍和简单部署手

    Maxscale--binlogserver 介绍和简单部署手册 一、Maxscale介绍 MariaDB Max...

  • SpringBoot实操(2)

    二 今日目标 简单介绍后端渲染模板Thymeleaf,并且在SpringBoot上完成部署和简单测试。 简单介绍M...

  • Mysql之BinlogServer

    我们在数据库的应用里,经常会使用到数据同步的场景, 从简单的单主单从同步, 到从单主多从, 再到多主多从等。 不同...

  • ansible的简单部署和介绍

    ansible概述 ansible是基于python语言开发的自动化软件工具 是基于ssh远程管理服务实现远程主机...

  • 第3章 Docker的安装

    这里只介绍Docker在Linux的安装部署方法和过程,具体可以查看我的博客。 除了介绍如何安装部署Docker之...

  • maxscale

    https://mariadb.com/downloads/#mariadb_platform-mariadb_m...

  • ansible-playbooks的了解

    一.playbooks的简单介绍 playbook是ansible用于配置,部署,和管理被控节点的剧本,通过pla...

  • 系统服务部署入门

    系统服务部署入门 说到服务部署,想必绝大多数程序员都做过linux和windows上的部署。博主在这里简单介绍一下...

  • zabbix监控ceph

    文档结构 1 zabbix介绍2 安装部署 3 参考资料 zabbix介绍 首先需要简单介绍下Zabbix,...

  • SpingBoot实操(3)

    三 今日目标 介绍LayUI,将LayUI部署到SpringBoot项目中,并且简单测试。 介绍MybatisGe...

网友评论

      本文标题:BinlogServer 之 MaxScale 介绍和简单部署手

      本文链接:https://www.haomeiwen.com/subject/nsfenctx.html