centos7
二進制安裝MySQL5.7
1、先卸載掉mariadb
把從官網下載下來的二進制包解壓
官方二進制安裝包位置:https://dev.mysql.com/downloads/mysql/
解壓完成之後移動到/usr/local下並取名叫mysql
創建用戶和組
創建數據庫文件夾(data)
2、更改換將變量
3、修改my.cnf文件
4、把啓動腳本放到/etc/init.d/ 改名叫mysqld 並給可執行權限
5、把mysql路徑下更改屬主屬組
6、初始化數據庫
直接啓動就好了
7、查找mysql密碼並登陸修改
SSL
1)在主 mysql 創建 SSL/RSA 文件
2、給server-key.pem和client-key.pem讀的權限
重啓 mysql 服務
登錄 mysql,執行 mysql> show variables like '%ssl%';
從上圖可以看到 mysql 支持了 ssl 安全連接
注:啓用 mysql 支持 ssl 安全連接主要用於 mysql 主從複製(局域網可以非 ssh 連接即明文
複製,但 internet 複製建議採用 ssl 連接)
在主 mysql 上的操作完成,再生成一個複製帳號:REQUIRE SSL
在主 mysql 上啓用二進制日誌並重啓 mysql 服務
重啓 mysql 服務
查看主 mysql 的狀態
注:要記住上圖所顯示的 file 和 position 的值,配置從服務器要用到防火牆允許 3306/tcp 通信
接着就去從上配置
從 mysql 的/etc/my.cnf 文件內容
注:server_id 要唯一,不能和其他 mysql 主機的重複
把主 mysql 生成的證書給了從服務器
注:192.168.157.131 是從 mysql 的 IP 地址
查看從 mysql 複製過來的證書
繼續在從上配置 SSL:修改/etc/my.cnf 文件,添加如下內容
重啓 mysqld 服務
查看 SSL 是否被支持:
那麼在配置主從複製之前可以在從 mysql 上用 SSL 連接主服務器試試:
注:192.168.157.128 是主 mysql 的 ip 地址
SSL 測試連接成功,並且登入的 SSL 協議是: Cipher in use is DHE-RSA-AES256-SHA最後開始配置主從 replicate,登錄從 mysql
在從上 change master to
啓用從
查看從的狀態,以下兩個值必須爲 yes,代表從服務器能正常連接主服務器
Slave_IO_Running:Yes
Slave_SQL_Running:Yes
測試:
在主 mysql 上:創建一些東西
從服務器上
以上同步成功。
總結:
SSL(Secure SocketsLayer 安全套接層),及其繼任者傳輸層安全(Transport Layer Security,TLS)是爲網絡通信提供安全及數據完整性的一種安全協議。複製默認是明文進行傳輸的,通過SSL 加密可以大大提高數據的安全性。
(以上做法均爲個人經驗,如有瑕疵請大神指點)