如何在shell命令中,执行stop slave与 start slave操作呢?我要做增量备份,策略是直接备份binlog日志,这个时候就需要stop slave下(不然的话,日志一边写,一边备份,容易出错),日志备份完了,再start slave起来。这样的实现操作,shell命令.sh文件里面如何实现?

解决方案 »

  1.   

    mysql -uroot -p -e "stop slave"
      

  2.   


    flush log之后,数据目录下会新生成一个新的日志mysql-bin.000056。我的备份策略是 tar mysql-bin.0*,所以这个时候就把新的mysql-bin.000056给压缩进去了!网上说mysql-bin.index在第一次增量备份之后,会被清空,可是我的mysql-bin.index里面一直是存储了mysql-bin.000001....mysql-bin.000055所有的日志记录。悲剧啊!
      

  3.   

    每天的增量备份,都是备份mysql-bin.000001到mysql-bin.0000XX,所有的增量日志都备份了,搞得每天还要去删前几天的备份,不然磁盘就满了!
      

  4.   

    MySQL支持增量备份:需要用--log-bin选项来启动服务器以便启用二进制日志;参见5.11.3节,“二进制日志”。当想要进行增量备份时(包含上一次完全备份或增量备份之后的所有更改),应使用FLUSH LOGS回滚二进制日志。然后,你需要将从最后的完全或增量备份的某个时刻到最后某个点的所有二进制日志复制到备份位置。这些二进制日志为增量备份;恢复时,按照下面的解释应用。下次进行完全备份时,还应使用FLUSH LOGS或mysqlhotcopy --flushlogs回滚二进制日志。