一、作为主服务器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 文件

注:启用 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

防火墙规则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

[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
server_id =
socket = /usr/local/mysql/mysql.sock
log-error = /usr/local/mysql/data/mysqld.error
relay-log = /usr/local/mysql/data/relay-log-bin
relay-log-index = /usr/local/mysql/data/slave-relay-bin.index

注:server_id 要唯一,不能和其他 mysql 主机的重复
在master主机把主 mysql 生成的证书给了从服务器

cd /usr/local/mysql/data/

scp ca.pam client-cert-pem client-key.pam root@192.168.41.20:/usr/local/mysql/data/

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

chmod +r client-key.pam

ls -l client-key.pam

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

ssl-ca = /usr/local/mysql/data/ca.pam

ssl-cert = /usr/local/mysql/data/client-cert.pam

ssl-key = /usr/local/mysql/data/client-key.pam

重启mysqld服务
systemctl restart mysqld
ss -napt |grep 3306
进入mysql查看ssl是否持久化

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

SSL 测试连接成功,并且登入的 SSL 协议是: Cipher in use is DHE-RSA-AES256-SHA
最后开始配置主从 replicate, 登录slave mysql
在从上 change master to

start slave \启动从同步进程:
查看从的状态,以下两个值必须为 yes,代表从服务器能正常连接主服务器
Slave_IO_Running:Yes
Slave_SQL_Running:Yes

测试:
master:

slave:

注意:
主从同步slave同步master,master不同步slave
SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security, TLS)
是为网络通信提供安全及数据完整性的一种安全协议。复制默认是明文进行传输的,通过
SSL 加密可以大大提高数据的安全性。

mysql+ssl主从复制的更多相关文章

  1. Mysql的ssl主从复制+半同步主从复制

    Mysql的ssl主从复制+半同步主从复制 准备工作 1.主从服务器时间同步 [root@localhost ~]# crontab -e */30 * * * * /usr/sbin/ntpdate ...

  2. mysql的主从复制是如何实现的

    前言 MySQL的主从复制是MySQL本身自带的一个功能,不需要额外的第三方软件就可以实现,其复制功能并不是copy文件来实现的,而是借助binlog日志文件里面的SQL命令实现的主从复制,可以理解为 ...

  3. mysql数据库主从复制部署笔记

    主从复制是mysql中数据库实时同步的一个常用做法了,今天我来给各位介绍一下关于mysql数据库主从复制部署一个过程,希望此例子对各位同学参考参考. 数据库主从复制原理: 数据库的主从复制就是从mas ...

  4. mysql之主从复制

    原理--> 在数据库层面,复制语句或者行,因为在数据库层面,故只有主服务器生成,并放到二进制日志里面,才能复制给从服务器. 原理--> mysql的主从复制基于异步,主要有三个进程执行,分 ...

  5. Mysql中主从复制的原理、配置过程以及实际案例

    Mysql中主从复制的原理.配置过程以及实际案例1.什么是主从复制?原理:主从分离,什么意思呢?我们不妨画个图看看.如图1所示: 2.准备工作:预备两台服务器,我这里使用虚拟机安装了两个Centos6 ...

  6. mysql简单主从复制(一)

    MYSQL简单主从复制 master:172.25.44.1 slave:172.25.44.2 mysql5.7安装 master和slave均操作 准备rpm包:mysql-5.7.17-1.el ...

  7. Mysql数据库主从复制搭建

    Mysql数据库主从复制原理: 主库开启bin-log日志,同时生成IO线程.IO线程负责将用户写入数据库的sql语句记录在二进制日志bin-log,该记录过程可并发进行:生成标识号 server i ...

  8. liinux安装 mysql 及主从复制

    mariadb其实就是mysqlmysql已经被oracle收购,它即将闭源,马上要开始收费了因此还想免费试用开源的数据库mysql,就在centos7上,将mysql分支为mariadb 安装mar ...

  9. mysql (主从复制)(proxy , Amoeba)

    原址如下: http://heylinux.com/archives/1004.html Mysql作为目前世界上使用最广泛的免费数据库,相信所有从事系统运维的工程师都一定接触过.但在实际的生产环境中 ...

随机推荐

  1. day_8文件的操作

    首先昨天讲的内容有 类型转换 1:数字类型: int ()  bool()  float() 2:str 与int:    int('10') | int('-10') | int('0') | fl ...

  2. 谈谈一些有趣的CSS题目(十六)-- 奇妙的 background-clip: text

    开本系列,谈谈一些有趣的 CSS 题目,题目类型天马行空,想到什么说什么,不仅为了拓宽一下解决问题的思路,更涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题 ...

  3. 【java】java反射初探 ——“当类也学会照镜子”

    反射的作用   开门见山地说说反射的作用   1.为我们提供了全面的分析类信息的能力 2.动态加载类   我理解的“反射”的意义 (仅个人理解哈)   我理解的java反射机制就是: 提供一套完善而强 ...

  4. vs2012升级vs2017后的一些坑

    异常信息:未能加载文件或程序集"System.Web.Helpers... 未能加载文件或程序集"System.Web.Helpers, Version=2.0.0.0, Cult ...

  5. 一个xss漏洞到内网漫游【送多年心血打造的大礼包啦!】

    i春秋作家:jasonx 原文来自:一个xss漏洞到内网漫游[送多年心血打造的大礼包啦!] 前言 渗透过程中,有时候遇某些网站,明明检测到有xss漏洞,但是盲打以后,收到的cookie还是不能登录后台 ...

  6. 【百度杯】ctf夺旗大战,16万元奖励池等你拿

    寻找安全圈内最会夺flag的CTF职业玩家,将以个人方式参与夺旗,完全凭借个人在CTF中的技艺及造诣获得奖金回报. 周末少打一局LOL,玩一玩CTF也能挣个万元零花钱! **比赛时间: 9月至17年3 ...

  7. Eclipse 中 Spring 项目的 XML 配置文件报错 Referenced file contains errors

    原来运行正常的项目,突然在applicationContext.xml 文件头报错 总结一下网上的解决方案: 1.有可能网络状况不好导致 如果使用Maven构建项目,spring在加载xsd文件时总是 ...

  8. VIM -小技巧汇总

    一 代码自动对齐: 1 命令行模式下先输入gg 然后按=后输入大写的G,这样整个文件的代码就对齐了. 二 选中多行缩进 1.按v进入visual状态,选择多行,用>或<缩进或缩出 2. 通 ...

  9. 【app】Appium-desktop界面介绍

    在appium主界面的host输入127.0.0.1 然后点击Start Server即可开启appium server 我们来说说advanced选项 Server Address: 为appium ...

  10. mysql 开发进阶篇系列 4 SQL 优化(各种优化方法点)

    1 通过handler_read 查看索引使用情况 如果索引经常被用到 那么handler_read_key的值将很高,这个值代表了一个行被索引值读的次数, 很低的值表明增加索引得到的性能改善不高,索 ...