mysql 数据同步

mysql 数据同步
原理:分主从服务器,主服务器每次修改内容保存在log日志中,
从服务器定时的用特定的帐号从主服务器日志中的信息更新到自己的数据库中。
实现方式:
1.先保证 主从 服务器需要同步的数据库中的表结构 数据相同
2.在主服务器上进行如下配置
my.cnf(或my.ini)中应该配置:
server-id=100
server-id=100
log-bin=C:\mysqlbak\log-bin.log #同步事件的日志记录文件
binlog-do-db=backup_db #提供数据同步服务的数据库
3. 在主服务器上给从服务器帐号权限
mysql>GRANT FILE ON *.* TO 'fei'@'192.168.1.2' IDENTIFIEDBY 'wei123';
4.在从服务器下进行如下配置
my.cnf(或my.ini)中应该配置:
server-id=102
master-host=192.168.1.2 #主机的地址
master-user=fei #主机A提供给B的用户,该用户中需要包括数据库backup_db的权限
master-password=wei123 #访问密码
master-port=3307 #端口,主机的MYSQL端口
master-connect-retry=60 #重试间隔60秒
replicate-do-db=backup_db #同步的数据库
5.重新启动 主从服务器
6. 从服务器中mysql>slave start;
7. 察看主从服务器的状态
主服务 mysql>show master status\G
*************************** 1. row ***************************
File: log-bin.000002
Position: 1172
Binlog_Do_DB: backup_db
Binlog_Ignore_DB:
1 row in set (0.00 sec)
从服务器mysql>show slave status\G;
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 192.168.1.2
Master_User: fei
Master_Port: 3307
Connect_Retry: 60
Master_Log_File: log-bin.000002
Read_Master_Log_Pos: 1172
Relay_Log_File: 91B24589E15A487-relay-bin.097281
Relay_Log_Pos: 634
Relay_Master_Log_File: log-bin.000002
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
Replicate_Do_DB: backup_db
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
Last_Errno: 0
Last_Error:
Skip_Counter: 0
Exec_Master_Log_Pos: 1172
Relay_Log_Space: 634
Until_Condition: None
Until_Log_File:
Until_Log_Pos: 0
Master_SSL_Allowed: No
Master_SSL_CA_File:
Master_SSL_CA_Path:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master: 0
1 row in set (0.01 sec)

主要察看
Slave_IO_State: Waiting for master to send event
Slave_IO_Running: Yes
Slave_SQL_Running: Yes

8.在主服务器上插入数据 察看从服务器是否存能够同步
9. 如果没有看到同步数据结果,即同步不成功,请查看错误(如下)。
当有错误产生时*.err日志文件(可到mysql安装目录下的data中),当纠正错误后重新启动
如果要修改从服务器上的配置信息 请先删除 mysql目录下的master.info文件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值