MySQL主从复制(windows+Centos7进行主从复制)
复制的基本原理:slave会从master读取binlog来进行数据同步
MySQL复制过程分为三步:

master将改变记录到二进制日志(binary log),这些记录过程叫做二进制日志事件,binary log events;
slave 将master的binary log events拷贝到它的中继日志(relay log)
slave重做中继日志中的事件,将改变应用到自己的数据库中,MySQL复制时异步的且串行化的。
复制的基本原则:
每个slave只有一个master
每个slave只能有一个唯一的服务器ID
每个master可以有多个slave
复制的最大问题:延时
一主一从常见配置
这里首先要注意的问题时可以相互之间可以进行通信:ping +ip
如果ping不通,windows服务器可以参考以下这篇文章
https://www.inqingdao.cn/6120.html
1、mysql版本一致且后台以服务运行(两机之间,相互可以通信)
2、主从都配置在【mysqld】结点下,都是小写。
3、主机修改my.ini配置文件--
(1)【必须】主服务器唯一ID--server-id=1

(2)【必须】启用二进制日志
log-bin = 自己本地的路径/mysqlbin
log-bin=D:/devSoft/MySQLServer.5.5/data/mysqlbin
(3)【可选】启用错误日志
log-err = 自己本地的路径/mysqlerr
log-err = D:/devSoft/MySQLServer5.5/data/mysqlerr
(4)【可选】根目录
basedir=“自己本地路径”
basedir=”D:/devSoft/MySQLServer5.5/”

(5)【可选】临时目录
tmpdir = “自己本地路径”
tmpdir = “D:/devSoft/MySQLServer5.5”
(6)【可选】数据目录(数据库的数据库)
datadir = “自己本地路径/Data”
datadir = “D:/devSoft/MySQLServer5.5/Data”
(7)read-only = 0
主机,读写都可以
(8)【可选】设置不要复制的数据库
binlog-ignore-db = mysql
(9)【可选】设置需要复制的数据库
binlog-do-db=需要复制的主数据库名字
从机在Linux环境下进行配置—my.cnf
配置两个
(1)【必须】从服务器唯一ID
首先将server-id = 1的用#注掉,然后再下方有一个server-id = 2的我们进行开启。
(2)【可选】启用二进制日志
再我们修改过配置文件,这里最好时将主机和从机都重启后台mysql服务
主机从机都关闭防火墙
windows手动关闭
Linux防火墙关闭 service iptables stop
在Windows主机上建立账户并授权slave
授权命令:
GRANT REPLICATION SLAVE ON *.* TO ‘用户名’@‘从机数据库IP’ IDENTIFIED BY ‘密码’;
这里需要我们进入到windows的mysql目录下,通过mysql –u root –p进入到mysql当中,进行输入该命令
再进行刷新数据库状态
flush privileges;
查看master的状态
(1)show master status;
(2)记录下File和Position的值
执行完此步骤后不要再操作主服务器MYSQL,防止主服务器状态值发生变化。
开始配置Linux从机上配置需要复制的主机(可作为windows server2016服务器进行参考)
这里需要再mysql命令下进行配置,作为从机来进行接收
CHANGE MASTER TO MASTER_HOST=’主机ip’,
MASTER_USER=’授权用户名’,
MASTER_PASSWORD=’密码’,
MASTER_LOG_FILE=’mysqlbin.具体数字’,MASTER_LOG_POS=具体值;

然后再mysql命令行模式进行启动服务器复制功能:start slave;
这个时候,我们进行查看相应的参数--show slave shatus/G,看主从配置是否成功
Slave_IO_Running:Yes
Slave_SQL_Running:Yes
然后我们进行测试
主机新建库、新建表、insert记录,从机复制
最后通过stop slave;
进行停止服务复制功能
这里可能会出现的问题:

出现上述的错误以后,我们可以先停止同步,再做相应的配置。如果重新配的话,这里要重新输入show master status重新进行判断。
-----------------------------------------------------------------------------
学习来源:
https://www.bilibili.com/video/BV1KW411u7vy?p=1




