有A,B两个服务器,都开启了binlog,现在想在A服务器上增量备份B上的数据,请教一下大家如何处理

解决方案 »

  1.   

    你这个需求直接用mysql的主从复制解决不是更好?
      

  2.   

    A上有没有binlog 没什么关系了。通过A定期复制B上的binlog-xxxx 的文件到A就可以了,
      

  3.   

    有A,B两个服务器,都开启了binlog,现在想在A服务器上增量备份B上的数据你这个是想拷贝一份B上的增量备份的文件放在A上,以作故障时好从A上拷贝回文件进行恢复?
    还是想A上直接同步有B上的数据变化呢?如果是第一种情况的话,则把B上的增量备份的文件,自己写脚本定时从B把文件拷贝到A上即可。
    如果是第二种情况,则用master-slave进行复制同步即可。
      

  4.   

    谢谢大家的关注,是第一种情况,问个菜鸟的问题,B上的binlog文件每天都是变化的,比如今天是binlog.000002,明天是binlog.000003,增量备份的话我就备份新增的这个000003,在A上如果定时拷贝文件呢?
      

  5.   

    还有一个问题,一般是在一个binlog里写满再到另一个binlog吧,如果新增的数据和原来的数据记录变化记录在一个binlog里,那如果备份呢?
      

  6.   

    在A上如果定时拷贝文件呢?你可以使用xcopy 命令或者自己写个脚本来仅 复制更新后的 binlog 文件。
      

  7.   

    XCOPY只能实现把日志整个文件夹定时复制过来,好像并不能追踪更新后的binlog文件吧,仅复制更新后的binlog文件用批处理脚本能实现吗?
      

  8.   

    复制成功了,但是还有个问题,增量备份的意思应该是只备份新增的数据,但是在A上新增数据的时候日志文件长度变长,但复制的时候是复制整个log的,比如log-bin.000001这个文件仍是整个复制,有没有办法只复制log-bin.000001这个日志文件里新增的信息
      

  9.   

    xcopy H:\"LOG" \\B服务器(IP)\backup /d/y
    我的目的是把A里LOG文件夹下的新增的日志信息复制到B服务器上,我在A上是这样写的语句
      

  10.   

    原理我想应该是这样,每天备份前flush logs一下,然后
    xcopy H:\"LOG" \\B服务器(IP)\backup /d/y然后写成批处理脚本,每天按时执行就可以了,是吗?
      

  11.   

    复制整个log的,比如log-bin.000001这个文件仍是整个复制,有没有办法只复制log-bin.000001这个日志文件里新增的信息 不能! 因为你现在是基于文件系统的备份,复制的单位就是文件。你可以定时FLUSH LOGS强制bin-log进行切换到新的文件,一般是定时一天切换一次。
    你也可以设置 max_binlog_size.  来当文件大小到限时进行自动切换