千家信息网

mysql如何通过SSL实现主从复制

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,下文主要给大家带来mysql如何通过SSL实现主从复制,希望这些内容能够带给大家实际用处,这也是我编辑mysql如何通过SSL实现主从复制这篇文章的主要目的。好了,废话不多说,大家直接看下文吧。实验环
千家信息网最后更新 2026年10月31日mysql如何通过SSL实现主从复制

下文主要给大家带来mysql如何通过SSL实现主从复制,希望这些内容能够带给大家实际用处,这也是我编辑mysql如何通过SSL实现主从复制这篇文章的主要目的。好了,废话不多说,大家直接看下文吧。

实验环境:

node1:192.168.4.61

node2:192.168.4.62

CA:192.168.4.63

node1和node2时间同步

[root@node1~]#ntpdate 172.18.0.1

[root@node2~]#ntpdate 172.18.0.1

[root@node1~]#vim /etc/chrony.conf #node1和node2操作一样

[root@node1~]#systemctl start chronyd.service #启动服务

node1和node2基于key连接

[root@node1~]#ssh-keygen

[root@node1~]#ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.4.62#将公钥复制到node2上

node2操作和node1操作相同。

修改hosts文件

node1和node2配置相同

[root@node1~]#vim /etc/hosts

  3 192.168.4.61 node1 4 192.168.4.62 node2

确保关闭iptables和selinux

node1和node2安装mariadb数据库

[root@node1~]#yum install -y mariadb-server

[root@node2~]#yum install -y mariadb-server

配置node1为主云服务器

[root@node1~]#vim /etc/my.cnf.d/server.cnf

[root@node1~]#systemctl start mariadb #启动mariadb服务

MariaDB [(none)]> GRANT REPLICATION CLIENT,REPLICATION SLAVE ON *.* TO 'joah'@'192.168.4.62' IDENTIFIED BY '123456';  #对用户授权
查看是否开启二进制日志
MariaDB [(none)]> SHOW VARIABLES LIKE '%log%bin%';

在node1上二进制日志状态信息
MariaDB [(none)]> SHOW MASTER STATUS;

配置node2从云服务器

[root@node2~]#vim /etc/my.cnf.d/server.cnf

[root@node2~]#systemctl start mariadb #启动mariadb服务

MariaDB [(none)]> CHANGE MASTER TO MASTER_HOST='192.168.4.61',MASTER_USER='joah',MASTER_PASSWORD='123456',MASTER_LOG_FILE='master-log.000003',MASTER_LOG_POS=417;   #设置连接主服务器
启动从云服务器
MariaDB [(none)]> START SLAVE;
启动IO线程和SQL线程
MariaDB [(none)]> START SLAVE IO_THREAD,SQL_THREAD;
查看从云服务器状态
MariaDB [(none)]> START SLAVE IO_THREAD,SQL_THREAD;

测试是否已经实现主从复制

实现SSL功能

搭建CA云服务器

[root@CA/etc/pki/CA]#touch index.txt

[root@CA/etc/pki/CA]#echo 01 > serial

生成key文件

[root@CA/etc/pki/CA]#(umask 077;openssl genrsa -out private/cakey.pem 2048)

生成自签证书

[root@CA/etc/pki/CA]#openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 3650

node1生成证书

[root@node1~]#mkdir /etc/mysql/ssl -pv

[root@node1~]#chown mysql.mysql /etc/mysql/ssl/ -R

[root@node1/etc/mysql/ssl]#(umask 077;openssl genrsa -out master.key 2048)[root@node1/etc/mysql/ssl]#openssl req -new -key master.key -out master.csr

[root@node1/etc/mysql/ssl]#scp master.csr 192.168.4.63:/etc/pki/CA/newcerts/

[root@CA/etc/pki/CA/newcerts]#openssl ca -in master.csr -out master.crt -days 365

[root@CA/etc/pki/CA/newcerts]#scp master.crt ../cacert.pem 192.168.4.61:/etc/mysql/ssl

[root@node1~]#vim /etc/my.cnf.d/server.cnf

[root@node1~]#systemctl restart mariadb

查看是否开启SSL功能

node2生成证书

[root@node2~]#mkdir /etc/mysql/ssl -pv

[root@node2~]#chown mysql.mysql /etc/mysql/ssl/ -R

[root@node2/etc/mysql/ssl]#(umask 077;openssl genrsa -out slave.key 2048)

[root@node2/etc/mysql/ssl]#openssl req -new -key slave.key -out slave.csr

[root@node2/etc/mysql/ssl]#scp slave.csr 192.168.4.63:/etc/pki/CA/newcerts

[root@CA/etc/pki/CA/newcerts]#openssl ca -in slave.csr -out slave.crt -days 365

[root@CA/etc/pki/CA/newcerts]#scp slave.crt ../cacert.pem 192.168.4.62:/etc/mysql/ssl

[root@node2/etc/mysql/ssl]#vim /etc/my.cnf.d/server.cnf

重启服务

[root@node2/etc/mysql/ssl]#systemctl restart mariadb

基于SSL连接

node1授权
MariaDB [(none)]> GRANT REPLICATION CLIENT,REPLICATION SLAVE ON *.* TO 'joah'@'192.168.4.62' IDENTIFIED BY '123456' REQUIRE SSL;
测试

[root@node2~]#mysql -ujoah -p123456 -h292.168.4.61 --ssl

node2连接主云服务器以ssl复制
MariaDB [(none)]> CHANGE MASTER TO MASTER_HOST='192.168.4.61',MASTER_USER='joah',MASTER_PASSWORD='123456',MASTER_LOG_FILE='master-log.000008',MASTER_LOG_POS=429,MASTER_SSL=1,MASTER_SSL_CA='/etc/mysql/ssl/cacert.pem',MASTER_SSL_CERT='/etc/mysql/ssl/slave.crt',MASTER_SSL_KEY='/etc/mysql/ssl/slave.key';MariaDB [(none)]> START SLAVE;  #启动从云服务器MariaDB [(none)]> SHOW SLAVE STATUS\G;

小结

(1)如果你已经正确的添加了证书,但是启动以后还是没有启动SSL功能,有可能没有权限

[root@node2~]#chown mysql.mysql -R /etc/mysql/ssl

(2)如果出现图片中的问题,停止slave即可

(3)每一个过程中都需要验证是否成功然后进行下面的操作。

对于以上关于mysql如何通过SSL实现主从复制,大家是不是觉得非常有帮助。如果需要了解更多内容,请继续关注我们的行业资讯,相信你会喜欢上这些内容的。

服务 服务器 主从 生成 内容 功能 证书 配置 相同 下文 二进制 文件 日志 状态 线程 测试 成功 信息 公钥 图片 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 小米移动互联网科技园 百单网互联网科技有限公司 互联网新科技 互联网科技公司经营范围 朗新科技与工业互联网 互联网科技小贷 壹账通互联网科技 亿账通互联网科技 上海电发互联网科技有限公司 顶级互联网科技成果有哪些 湖南诚度互联网科技有限公司 花神(南京)互联网科技有限公司 深圳艾果互联网通讯科技 世界互联网领先科技成果获奖 上海钢联属于互联网科技股吗 广东工业互联网大赛深圳学泰科技 美国互联网科技公司 万物互联网智能科技 保山互联网科技靠谱吗 中国互联网公司的科技投入 互联网新科技 狮子座互联网科技有限公司 郑州华宇互联网科技 健康食品互联网创新科技园项目 本届互联网博览会上的黑科技 世界互联网领先科技成果获奖 福建互联网展示科技馆设计 互联网科技品牌 互联网科技对化妆品行业 宁波允成互联网科技有限公司
0