【问题标题】:How to get lost data to mysql replication slave如何将丢失的数据丢失到mysql复制从站
【发布时间】:2013-05-09 13:05:00
【问题描述】:

我正在设置 MASTER-SLAVE mysql 复制设置。

突然奴隶坠毁。 MASTER 工作没有任何问题。现在我再次启动了 SLAVE。并且工作正常。数据同步正常。

但问题是,slave 上的数据在slave 宕机时不存在。 (一些表的新表和行)。

我也做过

CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.xxxxxx', MASTER_LOG_POS=xxxxx

master 的最新职位。但是丢失的表和行不会进入 SLAVE。(在某些表上,行数少于主表;)

注意:当前数据正在同步。但问题是我不能丢失数据。

有没有办法在不重新启动主数据库的情况下获取这些数据,而无需再次执行整个过程?

谢谢

【问题讨论】:

    标签: mysql replication mysql-management


    【解决方案1】:

    当从站不同步时,我就是这样做的......

    在主人...

    # mysqldump -u user -p --all_databases --master-data > all_mysql_data.sql
    

    然后在奴隶上……

    # mysql -u user -p -e 'slave stop;'
    
    # mysql -u user -p < all_mysql_data.sql
    
    # mysql -u user -p -e 'slave start;'
    
    # mysql -u user -p -e 'show slave status\G;'
    

    您最好阅读mysqldump 以了解您的版本。密切注意 --all_databases 和 --master-data 选项。非常强大的朱朱。 ;)

    【讨论】:

    • 感谢您的回答。我是否需要从从属设备中删除现有数据(数据库)?而且我只需要两个数据库而不是全部。而且我们不需要再次将主位置设置为从属吗?否则同步将如何发生?
    • 无需删除表,转储文件将包含DROP TABLE IF EXISTS... --master-data 选项还将在转储文件中添加CHANGE MASTER TO... 行。就像我说的,阅读它。然后,创建一个转储文件,打开它并查看内部。
    猜你喜欢
    • 2015-01-31
    • 1970-01-01
    • 2014-07-30
    • 2013-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多