博客
关于我
MySQL基于SSL的主从复制
阅读量:795 次
发布时间:2023-02-12

本文共 2201 字,大约阅读时间需要 7 分钟。

MariaDB 主从复制与 SSL 配置指南

1. 主从复制配置

1.1 主节点配置

在主节点上启用二进制日志并设置服务器ID:

log-bin=mysql-bin# 主节点开启二进制日志binlog_format=mixedserver-id=1

1.2 从节点配置

在从节点上启用中继日志并关闭二进制日志:

server_id=2relay_log=relay-log# 从服务器中继日志并关闭二进制日志

1.3 从节点连接主节点并启动复制

通过命令连接主节点并启动复制线程:

# 在从节点上执行mysql -u repluser -p'replpass' -h 172.16.61.6 --execute "CREATE USER 'repluser'@'172.16.61.8' IDENTIFIED BY 'replpass'; GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'repluser'@'172.16.61.8' IDENTIFIED BY 'replpass' REQUIRE SSL;"

1.4 查看从节点状态

执行以下命令查看从节点复制状态:

SHOW SLAVE STATUS\G

2. 主从复制测试

2.1 在主节点创建数据库

在主节点上创建数据库并记录二进制日志位置:

CREATE DATABASE testdb;

2.2 在从节点查看数据库状态

在从节点上执行以下命令查看数据库状态:

SHOW SLAVE STATUS\G

3. 实现 SSL 复制

3.1 生成 CA 证书

在 CA 服务器上生成密钥和证书:

umask 077; openssl genrsa -out private/cakey.pem 1024openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 3650touch {index.txt,serial}echo 01 > serial

3.2 生成主服务器证书

在主服务器上生成密钥和证书:

mkdir /mysql/ssl -pvcd /mysql/sslumask 077; openssl genrsa -out master.key 1024openssl req -new -key master.key -out master.csropenssl ca -in master.csr -out master.crt -days 3650

3.3 生成从服务器证书

在从服务器上生成密钥和证书并上传:

mkdir /mysql/ssl -pvcd /mysql/sslumask 077; openssl genrsa -out slave.key 1024openssl req -new -key slave.key -out slave.csrscp slave.csr root@172.16.61.6:/tmpopenssl ca -in /tmp/slave.csr -out /tmp/slave.crtscp /tmp/slave.crt root@172.16.61.8:/mysql/ssl/

3.4 拷贝 CA 证书

将 CA 证书拷贝到各节点:

cp /etc/pki/CA/cacert.pem .scp /etc/pki/CA/cacert.pem root@172.16.61.8:/mysql/ssl/

3.5 设置权限

更改 SSL 目录权限:

chown -R mysql.mysql /mysql/ssl/

3.6 主从服务器 SSL 配置

在 mysqld.conf 中配置 SSL 参数:

[mysqld]ssl=1ssl-ca=/mysql/ssl/cacert.pemssl-cert=/mysql/ssl/master.crtssl-key=/mysql/ssl/master.key

3.7 重启主节点并验证 SSL 状态

在主节点上重启 MySQL 并查看 SSL 状态:

SHOW GLOBAL VARIABLES LIKE "%SSL%";

4. 从节点 SSL 连接测试

在从节点上执行以下命令测试 SSL 连接:

mysql -u repluser -p'replpass' -h 172.16.61.6 --ssl-ca=/mysql/ssl/cacert.pem --ssl-cert=/mysql/ssl/slave.crt --ssl-key=/mysql/ssl/slave.key

5. 主节点授权 SSL 复制账号

在主节点上授权 SSL 复制账号:

GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'repluser'@'172.16.61.8' IDENTIFIED BY 'replpass' REQUIRE SSL;

6. 从节点 SSL 连接测试

在从节点上执行以下命令测试 SSL 连接:

START SLAVE;SHOW SLAVE ERROR;

通过以上步骤,您可以成功配置 MariaDB 主从复制并启用 SSL 加密复制连接。

转载地址:http://nhbfk.baihongyu.com/

你可能感兴趣的文章