小生博客:http://xsboke.blog.51cto.com
-------谢谢您的参考,如有疑问,欢迎交流
目录:
--------mysql-5.7.13简介及安装
--------配置mysql-5.7.13的ssl加密传输
--------基于SSL加密传输实现mysql-5.7.13的主从复制
一、 Mysql5.7.13简介
1. Mysql5.7的主要优化
1) JSON 语法是 JavaScript 对象表示语法的子集。
数据在键值对中
数据由逗号分隔
花括号保存对象
方括号保存数组
用JSON编写的文件,可以代替.yaml格式的文件。(docker kubernetes中用的到,创建RC。)
2. 在centos7.*安装mysql5.7的基本流程
1) Centos7.*默认安装了mariadb-libs数据库,需要卸载
2) 确认内核版本和系统版本
3) 安装依赖包
4) 创建mysql用户和用户组
5) 创建mysql需要的目录
6) 安装mysql5.7
7) 优化数据库执行路径并初始化数据库
二、在centos7.2安装mysql5.7并进行优化配置
1. 安装文件准备
下载cmake-3.5.tar.gz:
http://wwwNaNake.org/download/
下载ncurses-5.9.tar.gz:
ftp://ftp.gnu.org/gnu/ncurses/
下载bison-3.0.4.tar.gz:http:
//ftp.gnu.org/gnu/bison/
下载mysql-5.7.13.tar.gz:
wget http://cdn.mysql.com/Downloads/MySQL-5.7/mysql-5.7.13.tar.gz
下载Boost_1_59_0.tar.gz:
wget
http://nchc.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz
2. 首先安装依赖包及创建mysql用户、组和安装目录
确认系统有没有安装默认的数据库
先删除默认安装的mariadb-libs数据库

Cmake(cmake需要gcc gcc-c++ make automake 的支持)



安装ncurses

安装bison

安装boost

创建mysql需要的组和用户

创建安装路径

3. 安装mysql5.7.13
首先进行cmake配置

然后编译并安装

优化mysql执行路径并设置授权并初始化mysql系统授权表


创建配置文件


配置mysql自动启动

首先去查看错误日志

然后去查看/var/run下有没有mysqld这个目录

下面修改mysqld服务脚本

再次重启mysql服务

修改mysql的默认密码

到此mysql安装完毕
三、实现基于ssl安全连接的主从复制
1. 首先在master创建ssl.rsa文件


2. 关于密钥权限出现的问题(必须解决)
重启mysqld服务(有时会报错,但是有时只能通过查看错误日志才能发现错误)

查看server-key.pem的权限

修改权限并重启mysqld

再次查看mysqld错误日志

3. 登录mysql查看是否支持了ssl

4. 在master生成一个用于mysql主从复制的账号

5. 在master上启动二进制文件并重启服务


6. 查看master的状态
需要让从知道应该从master的什么位置开始进行主从复制


7. 修改slave的my.cfg文件指定中继日志及中继日志清单的存放位置

8. 将master生成的证书传送给slave

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

10. 在slave的配置文件中添加证书和密钥对存放的位置


重启后最好查看一下mysql的错误日志,是否出现了错误信息
11. 查看ssl是否被支持并进行测试
登录slave的数据库
测试ssl连接是否成功

12. Mysql5.7的每个服务器都拥有一个独一的UUID号(扩展知识)

13. 在slave设置同步并且启用从功能


14. 测试
首先在master创建数据库和表并插入数据

然后在slave查看数据是否同步
