
一、MySQL自带同步机制原理
1.主服务器A把自己主机上的操作写入指定的日志文件,写入完后记住最后的读写位置A_LAST_POS
2.从服务器B从主服务器上获取相应的日志文件,读取日志,进行相应的操作,完成后记住读写位置B_LAST_POS
3.主服务器A从最A_LAST_POS开始记录日志
4.从服务器B从B_LAST_POS位置开始读写日志
5.不断重复3,4
二、文件配置(my.int文件中追加)
1.服务端配置
server-id=1 #主机id
log-bin=E:\\Program Files\\mysql\\mysqlback #同步事件的日志记录文件 (这个很中意)
binlog-do-db=sd_jdic #明确指出提供数据同步服务的数据库
binlog-ignore-db=mysql #明确指出不提供数据同步服务的数据库
2.客户端配置
server-id = 2
log-bin = C:\\Program Files\\MySQL\\mysqlback #同步事件的日志记录文件
replicate-do-db = sd_jdic#明确指出获取数据同步服务的数据库
replicate-ignore-db = mysql,information_schema #明确指出获取数据同步服务的数据库
master-host=192.168.1.253 #主服务器A的地址
master-user=root #主服务器A提供给从服务器B的用户
master-password=123456 #访问密码
master-port=3306 #端口,主机的MYSQL端口
master-connect-retry=60 #连接重试,间隔60秒
三、基本操作
1.服务端
a.授权
grant replication slave on *.* to 'replication'@'192.168.1.%' identified by '123456';
flush privileges;
show master status;
b.清空日志
flush logs
2.客户端
a.重启客户端
stop slave;
start slave;
show slave status\\G
b.手动配置信息
stop slave;
change master to
master_host='192.168.1.253',
master_user='root',
master_password='123456',
master_port=3306,
master_log_file='mysqlback.000001',
master_log_pos=106;
start slave;
show slave status\\G
c.清空客户端数据,从服务中拿
stop slave;
reset slave;
start slave;
load data from master;
