一、目标实验
环境:yum安装本机自带的maiadb5.5 做实验保持干净环境。 系统:Centos7.6
关掉防火墙:
systemctl disable firewalld
chkconfig iptables off
关闭SELinux:
vim /etc/selinux/config 设置SELINUX的值为disabled,重启系统。
1.mariadb的主从复制
2.mariadb的级联复制
3.mariadb的半同步复制
4.mariadb基于ssl的加密主从复制
二、主从复制
主服务器
1.修改配置文件/etc/my.cnf设置server-id=1 开启二进制文件 并制定路径
2.启动服务
systemctl start mariadb
3.创建用户 指定ip并授权
grant replication slave on *.* to repluser@‘192.168.36.%‘ identified by ‘centos‘;
从服务器
4.修改配置文件/etc/my.cnf设置server-id=2
5.打开mysql输入;
CHANGE MASTER TO
MASTER_HOST=‘主服务器IP‘,
MASTER_USER=‘repluser‘, #输入创建的用户名
MASTER_PASSWORD=‘centos‘, #输入创建的密码
MASTER_PORT=3306, #输入开启的端口
MASTER_LOG_FILE=‘mysql-bin.000002‘, # 输入二进制文件名
MASTER_LOG_POS=402; #输入备份的起始位置
6.启动线程:
start slave;
show slave status\G 查看 是否连接上
7.测试在主服务器创建一个数据库查看是否同步
三、级联复制
什么是级联复制:所谓级联复制就是master服务器,只给一台slave服务器同步数据,然后slave服务器在向后端的所有slave服务器同步数据,降低master服务器的写压力,和复制数据的网络IO。
主服务器
1.配置主配置文件/etc/my.cnf
启动数据库
systemctl start mariadb
2.创建账户
grant replication slave on *.* to wang@‘172.16.130.%‘ identified by ‘centos‘;
3.进行数据库备份复制到级联节点主机
mysqldump -A --single-transaction --master-data=1 > /data/mysql/all.sql
scp /data/mysql/all.sql 172.16.130.121:/data
级联节点服务器()
1.修改配置文件/etc/my.cnf 一定要开启二进制
2.修改all.sql文件 启动服务导入文件
启动线程:start slave;
查看链接状态:show slave status\G
3.备份文件
mysqldump -A --single-transaction --master-data=1 -F > /data/mysql/all.sql
mysqldump -A --single-transaction --master-data=1 -F > /data/mysql/all.sql
4.测试创建数据库能不能同步
从数据库配置
1.修改配置文件/etc/my.cnf
server-id=3
read-only
2.修改/data/all.sql
3.将文件all导入数据库 启动线程查看状态
mysql < /data/all.sql
start slave;
show slave status\G
4.测试在主服务上创建数据库测试
原文:https://www.cnblogs.com/liuldexiaoche/p/11178504.html