1.理解MySQL主从复制原理。
主要基于MySQL二进制日志
主要包括三个线程(2个I/O线程,1个SQL线程)
1)MySQL将数据变化记录到二进制日志中;
2)Slave将MySQL的二进制日志拷贝到Slave的中继日志中;
3)Slave将中继日志中的事件在做一次,将数据变化,反应到自身(Slave)的数据库
详细步骤: 1)从库通过手工执行change master to 语句连接主库,提供了连接的用户一切条件(user 、 password、port、ip),并且让从库知道,二进制日志的起点位置(file名 position 号); start slave
2)从库的IO线程和主库的dump线程建立连接。
3)从库根据change master to 语句提供的file名和position号,IO线程向主库发起binlog的请求。
4)主库dump线程根据从库的请求,将本地binlog以events的方式发给从库IO线程。
5)从库IO线程接收binlog events,并存放到本地relay-log中,传送过来的信息,会记录到 master.info中
6)从库SQL线程应用relay-log,并且把应用过的记录到relay-log.info中,默认情况下,已经应用过的 relay 会自动被清理purge
2.完成MySQL主从复制
1)主库设置server-id并开启binlog参数
2)建立同步账号
3)锁表设置只读
4)查看主库状态
5)备份数据库数据
6)解锁
7) 主库备份数据上传到从库
8)从库设置server-id并关闭binlog参数
9)还原从主库备份数据
10)设定从主库同步
11)启动从库同步开关
12)测试
主库创建一个数据库
从库查看