zoukankan      html  css  js  c++  java
  • MySQL数据库:RESET MASTER、RESET SLAVE、MASTER_INFO、RELAY_LOG_INFO

    MySQL数据库:RESET MASTER、RESET SLAVE、MASTER_INFO、RELAY_LOG_INFO

    RESET MASTER
    删除所有index file中记录的所有binlog文件,将日志索引文件清空,创建一个新的日志文件,这个命令通常仅仅用于第一次用于搭建主从关系的时的主库

    注意 ;reset master 不同于purge binary log的两处地方
    1:reset master 将删除日志索引文件中记录的所有binlog文件,创建一个新的日志文件 起始值从000001 开始,然而purge binary log 命令并不会修改记录binlog的顺序的数值
    2:reset master 不能用于有任何slave正在运行的主从关系的主库。因为在slave 运行时, reset master 命令不被支持,reset master 将master 的binlog从000001 开始记录,
    slave记录的master log 则是reset master 时主库最新的binlog,从库会报错无法找的指定的binlog文件。


    RESET SLAVE
    reset slave 将使slave 忘记主从复制关系的位置信息。该语句将被用于干净的启动, 它删除master.info文件和relay-log.info 文件以及所有的relay log 文件并重新启用一个新的relaylog文件。
    使用reset slave之前必须使用stop slave 命令将复制进程停止。

    注:所有的relay log将被删除不管他们是否被SQL thread进程完全应用(这种情况发生于备库延迟以及在备库执行了stop slave 命令),存储复制链接信息的master.info文件将被立即清除,
    如果SQL thread 正在复制临时表的过程中,执行了stop slave ,并且执行了reset slave,这些被复制的临时表将被删除。

    RESET SLAVE ALL
    在 5.6 版本中 reset slave 并不会清理存储于内存中的复制信息比如 master host, master port, master user, or master password,也就是说如果没有使用change master 命令做重新定向,执行start slave 还是会指向旧的master 上面。
    当从库执行reset slave之后,将mysqld shutdown 复制参数将被重置。

    relay-log-info
    记录SQL线程读取Master binlog的位置,用于Slave 宕机后根据文件中记录的pos点恢复Sql线程

    master-info
    记录IO线程读取已经读取到的master binlog位置,用于slave宕机后IO线程根据文件中的POS点重新拉取binlog日志

    sync_relay_log_info
    执行多少个事务后将relay-log-info,sync一下文件刷新到磁盘

    sync_master_info

    如果下面两个sync参数设置较大,当宕机时:
    sync_master_info较大将导致重复拉取binlog日志
    sync_relay_log_info较大将导致重复执行binlog日志

    参考:

    https://www.aliyun.com/jiaocheng/1405382.html

    https://yq.aliyun.com/articles/233178

  • 相关阅读:
    bzoj 4034 [HAOI2015]树上操作——树链剖分
    bzoj 1179 [Apio2009]Atm——SCC缩点+spfa
    bzoj 1123 [POI2008]BLO——点双连通分量
    poj1830开关问题——异或高斯消元
    bzoj2004公交线路——DP+矩阵加速递推
    bzoj2875随机数生成器——矩阵快速幂
    Splay模板
    map插入与查找
    bzoj1013高斯消元
    bzoj2257瓶子与燃料——最大公约数
  • 原文地址:https://www.cnblogs.com/elontian/p/9983864.html
Copyright © 2011-2022 走看看