一、基本原理
二、作用及条件
1、作用
实时灾备,用于故障切换
读写分离,提供查询服务
备份,避免影响业务
高可用和故障切换(需要做HA)
2、主从部署必要条件:
主库开启binlog日志(设置log-bin参数)
主从server-id不同
从库服务器能连通主库
三、实验
主服务器(Master)
1、启用二进制日志 log-bin。
2、设置一个全局唯一的 server_id。
3、提前准备好一个有复制权限(replication slave,replication client)的用户。
从服务器(Slave)
1、启动中继日志 relay-log。
2、设置一个全局唯一的 server_id。
3、使用主服务器提供的有复制权限的用户连接至 Master。
4、启动复制线程。
环境要求
1、主服务器:192.168.121.130
2、从服务器:192.168.0.107
3、mysql版本:mysql-5.7
4、系统:主 centos,从 Windows10
主服务器配置
1、配置 my.ini
添加配置信息
log-bin=master-log-bin
server-id=1innodb-file-per-table=ON
2、重启服务,并进入MySQL查看主服务器状态信息

3、给复制用户授权
grant replication slave,replication client on *.* to root@192.168.0
.107;
或者 用%通配符允许局域网内所有IP地址访问
4、刷新权限:flush privileges;
到此主服务器配置完成!
从服务器配置
1、配置 my.ini
log-bin=slave-log-bin
relay_log=relay-log
relay_log_index=relay-log.index
server-id=2
innodb_file_per_table=ON
2、重启并进入MySQL服务
3、用主服务器提供的复制用户连接主服务器
change master to
master_host='192.168.121.130',master_port=3306,master_user='root',master_password='root123',master_log_file='master-log-bin.000001',master_log_pos=154;
# 这里的 master 日志文件和位置必须与主服务器当前状态一致!
4、启动复制线程
start slave;

此时会启动 IO Thread 和 SQL Thread 这两个线程 ,这两个线程必须是yes才可以,不然无法进行实验。
测试
在主服务器上新建一个没有的数据库(test),


新建后再在从服务器上查看

至此测试完毕并达到预期的效果!

文章转载自月球软件源码,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。





