文章目录
1,概述主从介绍
Mysql主从又叫Replication、AB复制。简单讲就是A与B两台机器做主从后,在A上写数据,另外一台B也会跟着写数据,实现数据实时同步
mysql主从是基于binlog,主上需开启binlog才能进行主从
主从过程大概有3个步骤
主将更改操作记录到binlog里
从将主的binlog事件(sql语句) 同步本机上并记录在relaylog里
从根据relaylog里面的sql语句按顺序执行
2,主从作用
实时灾备,用于故障切换
读写分离,提供查询服务
备份,避免影响业务
主从形式
-
一主一从
-
主主复制
-
一主多从—扩展系统读取的性能,因为读是在从库读取的
-
多主一从—5.7版本开始支持
-
联级复制
3,主从复制原理
4,主从复制步骤
主库将所有的写操作记录在binlog日志中,并生成log dump线程,将binlog日志传给从库的I/O线程
从库生成两个线程,一个是I/O线程,另一个是SQL线程
I/O线程去请求主库的binlog日志,并将binlog日志中的文件写入relay log(中继日志)中
SQL线程会读取relay loy中的内容,并解析成具体的操作,来实现主从的操作一致,达到最终数据一致的目的
5,主从复制配置步骤
确保从数据库与主数据库里的数据一致
在主数据库里创建一个同步账户授权给从数据库使用
配合主数据库(修改配置文件)
配置从数据库(修改配置文件)
需求
搭建两台MYSQL服务器,一台作为主服务器,一台作为从服务器,主服务器进行写操作,从服务器进行读操作
6,环境说明【使用docker启动两个】
名称 | Ip | Port |
---|---|---|
M1 | 192.168.149.128 | 3307 |
M1S1 | 192.168.149.128 | 3308 |