mariadb 主从配置的填坑记录

这周让辅导的新人配置后端环境,其中之一为mariadb主从配置,两台实体服务器,主备部署,对外为一个虚拟ip。

新人配置过程中踩过的坑记录一下。

环境:centos:CentOS Linux release 7.6.1810 (Core),mariadb:mysql  Ver 15.1 Distrib 10.3.22-MariaDB,keepalived:1.3.5-16.el7

数据库服务器通过keepalived实现主备部署,备库通过主从复制保持数据同步。

坑1:firewall。keepalived通过vrrp实现主备部署,主备选举和心跳默认通过组播通信数据,firewall需要添加相应规则。

通过添加高级防火墙规则放通,查看放通的规则如下

ipv4 filter INPUT 0 --in-interface eno3 --destination 224.0.0.18 --protocol vrrp -j ACCEPT

 

坑2:从库账号,从库需要连接主库,从而进行数据同步。由于数据库账号管理有一定的限制,指定了一个slave账号给从库使用,限制了客户机的ip并赋予相应权限。创建语句如下

create user 'slave'@'192.168.1.2' identified by 'slave@2016';
grant replication slave,replication client on *.* to 'slave'@'192.168.1.2' identified by 'slave';
flush privileges;

创建用户的时候需要注意限制的ip地址,赋权时也要注意,否则客户机连接失败。

这里slave账号只需要在主库创建,服务器keepalived主机配置为不随开机启动,避免故障后重启接管服务。

 

坑3:在从库设置主库信息,需要通过命令设置主库的日志文件和开始位置(根据主库的master状态)后再开启从库的slave服务。设置命令如下

 change master to master_host='192.168.1.1',master_user='slave',master_password='slave',master_log_file='master-bin.000001',master_log_pos=0;

这里需要注意master_host的ip是主库的ip,否则slave启动失败。

 

坑4:dns,配置好之后发现依然连接失败,反馈为    slave@主机名   接入失败

解决方法有两个:

1:在配置文件加入skip-name-resolve,重启数据库服务

2:赋权给slave@主机名

本次操作选择了第一种方案,跳过dns也可稍微节约一点数据库性能。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大橙Orange

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值