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

  • 相关阅读:
    使用 webapi+Aspose.Cells 导出execl 功能
    自定义html滚动条样式
    vue+webapi 实现WebSocket 推送
    vue 跨层级 调用solt 传递
    关于对 asp.net mvc 异步方法的理解
    c# 反射机制
    千里之行,始于足下
    [转]浅析大数据量高并发的数据库优化
    关闭rdlc报表打印预览后,关闭客户端,抛出异常“发生了应用程序级的异常 将退出”
    深拷贝
  • 原文地址:https://www.cnblogs.com/elontian/p/9983864.html
Copyright © 2011-2022 走看看