centos7二进制安装MySQL5.7并且做主从复制

centos7

二进制安装MySQL5.7

1、先卸载掉mariadb

把从官网下载下来的二进制包解压

官方二进制安装包位置:https://dev.mysql.com/downloads/mysql/

解压完成之后移动到/usr/local下并取名叫mysql

创建用户和组

创建数据库文件夹(data)


2、更改换将变量



3、修改my.cnf文件


centos7二进制安装MySQL5.7并且做主从复制_第1张图片


4、把启动脚本放到/etc/init.d/ 改名叫mysqld 并给可执行权限




5、把mysql路径下更改属主属组


6、初始化数据库



直接启动就好了

7、查找mysql密码并登陆修改


centos7二进制安装MySQL5.7并且做主从复制_第2张图片


SSL

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


centos7二进制安装MySQL5.7并且做主从复制_第3张图片

2、给server-key.pem和client-key.pem读的权限



重启 mysql 服务

登录 mysql,执行 mysql> show variables like '%ssl%';

centos7二进制安装MySQL5.7并且做主从复制_第4张图片

从上图可以看到 mysql 支持了 ssl 安全连接

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

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

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



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



重启 mysql 服务

查看主 mysql 的状态


centos7二进制安装MySQL5.7并且做主从复制_第5张图片

注:要记住上图所显示的 file 和 position 的值,配置从服务器要用到防火墙允许 3306/tcp 通信



接着就去从上配置

从 mysql 的/etc/my.cnf 文件内容

centos7二进制安装MySQL5.7并且做主从复制_第6张图片

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

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


centos7二进制安装MySQL5.7并且做主从复制_第7张图片

注:192.168.157.131 是从 mysql 的 IP 地址

查看从 mysql 复制过来的证书



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


centos7二进制安装MySQL5.7并且做主从复制_第8张图片

重启 mysqld 服务

查看 SSL 是否被支持:


centos7二进制安装MySQL5.7并且做主从复制_第9张图片


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


centos7二进制安装MySQL5.7并且做主从复制_第10张图片

注:192.168.157.128 是主 mysql 的 ip 地址


centos7二进制安装MySQL5.7并且做主从复制_第11张图片

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


centos7二进制安装MySQL5.7并且做主从复制_第12张图片

在从上 change master to



启用从

centos7二进制安装MySQL5.7并且做主从复制_第13张图片

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

Slave_IO_Running:Yes

Slave_SQL_Running:Yes


centos7二进制安装MySQL5.7并且做主从复制_第14张图片

测试:

在主 mysql 上:创建一些东西


centos7二进制安装MySQL5.7并且做主从复制_第15张图片

从服务器上


centos7二进制安装MySQL5.7并且做主从复制_第16张图片

以上同步成功。

总结:

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


(以上做法均为个人经验,如有瑕疵请大神指点)

你可能感兴趣的:(centos7二进制安装MySQL5.7并且做主从复制)