一、保证主从数据库初始态一致
直白的讲就是先建立主从数据库,且使其结构数据一致,大致介绍两种方案 :
- sql脚本建库
- 第三方客户端同步
二、配置主数据库ini文件
log-bin=mysql-bin #开启二进制日志 server-id=2 #主数据库id为1,不能相同。 replicate_wild_do_table=test.% #只同步test库下的表 relay_log=mysqld-relay-bin #记录中继日志 log-slave-updates=YES #从服务器同步后记录日志
三、查看主服务器日志记录位置
登上主服务器,执行下列指令:
show master status\G;
显示的信息如下:
*********************** 1. row ****************
File: mysql-bin.000001 #当前记录的日志
Position: 80647293 #日志中记录的位置
Binlog_Do_DB:
Binlog_Ignore_DB: 1 row in set (0.00 sec)
此处的信息要在后面的步骤中用到
四、主服务器创建允许从服务器同步数据的账户
grant replication slave on *.* to ‘username’@’IP’ identified by ‘password’;
说明:此处密码是主数据库的密码
Eg:
grant replication slave on *.* to ‘user_name’@’192.168.0.226’ identified by ‘ahaii’;
五、开启从数据库同步功能
change master to master_host='192.168.0.225', #主数据库IP master_user='user_name', #主数据库账号 master_password='ahaii', #主数据库密码 master_log_file='mysql-bin.000001', #通过第三步获取 master_log_pos=80647293; #通过第三步获取
六、查看从服务器是否已经成功开启同步
show slave status\G;
显示信息见下:

红色框里的两项必须为yes,如是no,可按如下方式排查:
- 查看master_log_file ,master_log_pos配置是否正确,第三步中已经给了方法,大部分问题都是此处导致的
- 查看日志文件,均有详细说明
若两项均为yes,则至此主从同步已经配置OK了,你可以进行测试。
原创文章,作者:Ferrycoln,如若转载,请注明出处:https://ms200.cn/archives/263