我创建了replicaDB,但遇到了问题。 当我创建它时,我做了以下一些步骤
通过这些步骤,replicaDB 已经获得了与 masterDB 相同的数据。 然而,由于 cron 作业,一条新记录(id = 159)在“UNLOCK TABLES;”之后被插入到 masterDB 中。并且它在replicaDB中没有同步。 从id = 160开始,记录现在同步到replicaDB中。
我该如何解决这个问题?
master数据库:192.168.30.123
复制数据库:192.168.30.131
数据库:todo
复制用户:repli4
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
有人可以帮助我吗?
您的副本似乎仍然可以从从属状态正常读取,只是数据不同步问题。这里最简单的事情就是重做备份和恢复。恢复后,您的副本应该与您的主数据匹配,并且您的复制设置应该不受影响。
FLUSH TABLES WITH READ LOCK;
mysqldump -uusername -p database_name > master_backup.sql
mysql -uusername -p database_name < master_backup.sql
UNLOCK TABLES;