mysql ssl复制_mysql+ssl主从复制

主从复制原理

d8adaff6fff8c55c3311d4f4953cd20d.gif

作为主服务器Master, 会把自己的每一次改动都记录到 二进制日志 Binarylog 中。 (从服务器I/O thread会负责来读取master binary log, 然后写入自身relay log中然后在用自身的sql thread读取relay log并在自身服务器执行一遍。)

到这里主服务器上的更改就同步到从服务器上了。

环境:

|centos7| master | slave |

mysql5.7 | 192.168.41.10 | 192.168.41.20 |

1、实现基于 ssl 安全连接的主从复制

1) 在主 mysql 创建 SSL/RSA 文件

e87019b8e03323ce494452a7de0d2fe8.png

67482248a4ef7a68460ec7d25ca78b95.png

0095ea1c0131744aff6152216289d459.png

注:启用 mysql 支持 ssl 安全连接主要用于 mysql 主从复制(局域网可以非 ssh 连接即明文

复制,但 internet 复制建议采用 ssl 连接)

在主 mysql 上的操作完成,再生成一个复制帐号:REQUIRE SSL

mysql>grant replication slave on . to 'rep'@'192.168.41.%' identified by '123456' require ssl;

在master上启用二进制日志并重启mysql服务

vim /etc/my.cnf

添加log-bin = mysql-bin

systemctl restart mysqld

d0e1ca142f63cdc40c06d52eca870706.png

防火墙规则3306/tcp通信

[root@localhost bin]# firewall-cmd --permanent --add-port=3306/tcp

success

[root@localhost bin]# firewall-cmd --reload

success

2)从服务器配置

slave的/etc/my.cnf

36e5e9323113bd20b38b230f3f9199ba.png

注:server_id 要唯一,不能和其他 mysql 主机的重复

在master主机把主 mysql 生成的证书给了从服务器

37b1a594b1288f5352ca6fe6f76532b8.png

设置 slave client-key.pem 的 r 权限

83400d9e2cee67d29ad8e6a43a8929f3.png

继续在从上配置 SSL:修改/etc/my.cnf 文件,添加如下内容

575602c60745b04e0d1c19d5d92f8562.png

重启mysqld服务

systemctl restart mysqld

ss -napt |grep 3306

进入mysql查看ssl是否持久化

54a293010af8696e50499de0f68db317.png

那么在配置主从复制之前可以在从 mysql 上用 SSL 连接主服务器试试:

1051cbe09e7eb17345e8c9f16aee51d2.png

bb9ea590441950b483d98a313cfc8cad.png

SSL 测试连接成功,并且登入的 SSL 协议是: Cipher in use is DHE-RSA-AES256-SHA

最后开始配置主从 replicate, 登录slave mysql

在从上 change master to

3e309363c90b2ae6c1223737ae9a75b4.png

start slave \启动从同步进程:

查看从的状态,以下两个值必须为 yes,代表从服务器能正常连接主服务器

Slave_IO_Running:Yes

Slave_SQL_Running:Yes

455eb3df91124d2ac6b73e83fe359958.png

测试:

master:

5da4af11de641c813909d8fcce050ef4.png

slave:

9e0757859f1efe1f2fceb38afe9be110.png

注意:

主从同步slave同步master,master不同步slave

SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security, TLS)

是为网络通信提供安全及数据完整性的一种安全协议。复制默认是明文进行传输的,通过

SSL 加密可以大大提高数据的安全性。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值