我创建了replicaDB,但遇到了一个问题。当我创建它的时候,我做了下面的一些步骤
1.用读锁冲洗表;在masterDB上
- mysqldump命令以及进行备份
1.将备份导入replicaDB
1.复位从机;,在replicaDB上执行CHANGE MASTER命令和START SLAVE
1.解锁表格;在masterDB上
通过这些步骤,replicaDB获得了与masterDB相同的数据。但是,由于cron作业,在“UNLOCK TABLES;“并且它没有在replicaDB中同步。从id = 160开始,记录现在在replicaDB中同步。
我该如何解决这个问题?
masterDB:192.168.30.123
replicationDB:192.168.30.131
数据库:todo
复制用户:repli 4
masterDB's set up
[mysqld]
bind-address = 0.0.0.0
binlog_format = ROW
max_binlog_size = 128M
expire_logs_days = 7
log-error=/var/log/mysql/error.log
log-bin-trust-function-creators = true
log-bin
binlog-format = mixed
log-basename =master
server_id = 1
log_bin = /var/log/mysql/mysql-bin.log
replicationDB's set up
[mysqld]
bind-address = 0.0.0.0
binlog_format = ROW
max_binlog_size = 128M
expire_logs_days = 7
log-error=/var/log/mysql/error.log
log-bin-trust-function-creators = true
server_id = 5
slave-skip-errors = all
replicate-do-db = todo
read_only = ON
log_bin = mysql-bin
rpl_semi_sync_slave_enabled=ON
1条答案
按热度按时间p5cysglq1#
看起来您的副本仍然从从属状态阅读正常,只是数据不同步问题。在这里要做的最简单的事情是重做备份和还原。恢复后,复制副本应与主数据匹配,并且复制设置应不受影响。
FLUSH TABLES WITH READ LOCK;
1.通过
mysqldump -uusername -p database_name > master_backup.sql
在masterDB上备份master1.通过
mysql -uusername -p database_name < master_backup.sql
将备份导入到replicaDBUNLOCK TABLES;