MySQL主从又叫做Replication、AB复制。简单讲就是A和B两台机器做主从后,在A上写数据,另外一台B也会跟着写数据,两者数据实时同步的。它基于binlog,主设备上须开启binlog才能进行主从。
主从过程大致有3个步骤:
1)主设备将更改操作记录到binlog里;
2)从将主设备的binlog事件(sql语句)同步到从本机上并记录在relaylog里;
3)从根据relaylog里面的sql语句按顺序执行。
主设备上有一个log dump线程,用来和从的I/O线程传递binlog。从设备上有两个线程,其中I/O线程用来同步主的binlog并生成relaylog,另外一个SQL线程用来把relaylog里面的sql语句落地。
准备工作
1、准备两台装有mysql的服务器,并启动mysql服务。
2、分配角色,确定设备主从。
配置主设备
1、编辑配置文件
2、重启mysql
3、检查log_bin
4、创建数据库
5、增加测试数据
6、备份所有数据库
7、创建用户
8、锁表并查看状态
配置从设备
1、编辑配置文件
2、重启mysql
3、复制主设备数据库备份文件
4、创建对应数据库
5、配置主备同步
6、查看主从状态
7、主设备解锁
测试主从同步
1、在主设备上删除db01数据库的表;
2、在从设备查看对应的表也已经不存在了。
扩展学习
▎配置参数
1. 主服务器上:
binlog-do-db= //仅同步指定的库(其他库不同步)
binlog-ignore-db= //忽略指定库(其他库都同步)
2. 从服务器上:
replicate_do_db= //(不常用)
replicate_ignore_db= //(不常用)
replicate_do_table= //(不常用)
replicate_ignore_table= //(不常用)
replicate_wild_do_table= //如aming.%, (支持通配符%)
replicate_wild_ignore_table=
本文转自Grodd51CTO博客,原文链接:http://blog.51cto.com/juispan/1961233,如需转载请自行联系原作者