千家信息网

MySQL配置SSL主从复制

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,MySQL5.6 创建SSL文件方法官方文档:https://dev.mysql.com/doc/refman/5.6/en/creating-ssl-files-using-openssl.html
千家信息网最后更新 2026年11月01日MySQL配置SSL主从复制

MySQL5.6 创建SSL文件方法

官方文档:https://dev.mysql.com/doc/refman/5.6/en/creating-ssl-files-using-openssl.html#creating-ssl-files-using-openssl-unix-command-line

Create clean environment

mkdir /home/mysql/mysqlcerts && cd /home/mysql/mysqlcerts

Create CA certificate

openssl genrsa 2048 > ca-key.pem
openssl req -new -x509 -nodes -days 3600 -key ca-key.pem -out ca.pem

Create server certificate, remove passphrase, and sign it

server-cert.pem = public key, server-key.pem = private key
openssl req -newkey rsa:2048 -days 3600 -nodes -keyout server-key.pem -out server-req.pem
openssl rsa -in server-key.pem -out server-key.pem
openssl x509 -req -in server-req.pem -days 3600 -CA ca.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem

Create client certificate, remove passphrase, and sign it

client-cert.pem = public key, client-key.pem = private key
openssl req -newkey rsa:2048 -days 3600 -nodes -keyout client-key.pem -out client-req.pem
openssl rsa -in client-key.pem -out client-key.pem
openssl x509 -req -in client-req.pem -days 3600 -CA ca.pem -CAkey ca-key.pem -set_serial 01 -out client-cert.pem
openssl verify -CAfile ca.pem server-cert.pem client-cert.pem
server-cert.pem: OK
client-cert.pem: OK

MySQL5.7 创建SSL文件方法

官方文档:https://dev.mysql.com/doc/refman/5.7/en/creating-ssl-rsa-files-using-mysql.html

mkdir -p /home/mysql/mysqlcerts
/usr/local/mysql-5.7.21-linux-glibc2.12-x86_64/bin/mysql_ssl_rsa_setup --datadir=/home/mysql/mysqlcerts/

主库创建SSL后进行配置

从库 192.168.1.222

mkdir -p /home/mysql/mysqlcerts

主库

chown -R mysql.mysql /home/mysql/mysqlcerts/
scp ca.pem client-cert.pem client-key.pem root@192.168.1.222:/home/mysql/mysqlcerts/

主库授权

GRANT REPLICATION SLAVE ON *.* TO 'repl'@'192.168.1.222' identified by '' require ssl;

主库 my.cnf

#SSL
ssl-ca=/home/mysql/mysqlcerts/ca.pem
ssl-cert=/home/mysql/mysqlcerts/server-cert.pem
ssl-key=/home/mysql/mysqlcerts/server-key.pem

restart mysql

从库

chown -R mysql.mysql /home/mysql/mysqlcerts/

my.cnf

ssl-ca=/home/mysql/mysqlcerts/ca.pem
ssl-cert= /home/mysql/mysqlcerts/client-cert.pem
ssl-key= /home/mysql/mysqlcerts/client-key.pem

创建复制:

change master to master_host='',master_user='',master_password='',master_log_file='mysql-bin.000001',master_log_pos=154, master_ssl=1, master_ssl_ca='/home/mysql/mysqlcerts/ca.pem', master_ssl_cert='/home/mysql/mysqlcerts/client-cert.pem', master_ssl_key='/home/mysql/mysqlcerts/client-key.pem' ,MASTER_CONNECT_RETRY=10;

验证:
主库配置SSL认证后,客户端默认以SSL方式登录

mysql -utest -h292.168.1.223 -ptest -P3307

(该账号不论是否配置require ssl 均能登录)

不以SSL方式登录命令为:

mysql -utest -h292.168.1.223 -ptest -P3307 --ssl-mode=DISABLED

(如该账号配置了require ssl 则无法登录)

配置 登录 官方 文件 文档 方式 方法 账号 命令 客户 客户端 能登 认证 验证 主从 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 广东万易互联网科技有限公司惠州分公司 狮子座互联网科技 世界互联网领先科技成果 北京互联网络科技有限公司 广州互联网络科技有限公司 撒么互联网科技公司 互联网金融科技委员会 互联网科技创新企业排名 厦门千工互联网科技有限公司 崇明区互联网教育科技售后服务 哈尔滨屹滨互联网科技有限公司 华夏恒生科技与互联网科技 徐州市互联网科技有限公司 为客找房互联网科技公司怎么样 互联网时代的科技公司 上海科技产业互联网平台 深圳互联网科技的发展 青岛易易互联网科技 互联网企业和网络科技有限公司 每日互联网科技新闻 易通互联网络科技有限公司 科技互联网公司logo 科技类的互联网平台 衡水科技产业互联网平台 开启互联网科技时代小说 阿里互联网科技企业 四川互联网展示科技馆设计 平安好医生打造互联网科技医疗 现代科技的标志之一的互联网 广州全民伙伴互联网科技有限公司
0