今天查看mysql err日志。发现mysql重新启动时总会有例如以下日志出现:

[Warning] Neither --relay-log nor --relay-log-index were used; so replication may break when this MySQL server
acts as a slave and has his hostname changed!! Please use '--relay-log=liytest-relay-bin' to avoid this problem.

这个警告提示本身的意思,作为slave,为防止由于主机名变更导致relay log文件名称无效的问题,最好设置'--relay-log=liytest-relay-bin'

但问题时,我这机器根本就没有开启slave模式,并且数据文件夹下一直有liytest-relay-bin.000001,relay的出现并且堆积。上网搜索总结一下原因

该实例原先是一个Slave   -------导致relay-log 和 relay-log.index的存在

该实例眼下已经不是Slave  -------由于没有了IO-Thread,导致relay-log-purge 没有起作用( 这也是其它Slave实例没有这样的情况的原因。由于IO-thread会做自己主动rotate操作)。

该实例每天会进行日常备份  -------Flush logs的存在,导致每天会生成一个relay-log

该实例没有配置expire-logs-days ------导致flush logs时,也不会做relay-log清除

简而言之就是: 一个实例假设之前是Slave,而之后停用了(stop slave),且没有配置expire-logs-days的情况下,会出现relay-log堆积的情况。





顺带也和大家分享下MySQL 内部Logrotate的机制

Binary Log rotate机制:

Rotate:每一条binary log写入完毕后,都会推断当前文件是否超过 max_binlog_size,假设超过则自己主动生成一个binlog file

Delete:expire-logs-days 仅仅在 实例启动时 和 flush logs 时推断,假设文件訪问时间早于设定值,则purge file

 

Relay Log rotate 机制:

Rotate:每从Master fetch一个events后,推断当前文件是否超过 max_relay_log_size 假设超过则自己主动生成一个新的relay-log-file

Delete:purge-relay-log 在SQL Thread每运行完一个events时推断,假设该relay-log 已经不再须要则自己主动删除



因此建议当slave不再使用时,一定要通过reset slave来取消relaylog,不然即使重新启动mysql,问题还是一样存在。

关于Relay Log无法自己主动删除的问题(Neither --relay-log nor --relay-log-index were used)的更多相关文章

  1. 用ahk脚本自己主动删除flashcookies

    手动方法(请戳点击打开链接): 点击桌面左下脚的"開始"键 打开"控制面板" 并点击 "flash player" 项 进入 并点击&quo ...

  2. 通过Transaction Log(fn_dblog)取回被删除的数据

    最近跟 James 讨论为何「ApexSQL Log」这个工具可以读到被删除的数据呢? 原来它是透过 Transaction Log 来读取数据的! 于是透过 Transaction Log 到网络上 ...

  3. 删除指定路径下固定格式,以.log结尾、三天前的文件,或删除空的日志文件

    师出‘百测’besttest 删除指定路径下固定格式,以.log结尾.三天前的文件,或删除空的日志文件. 日志文件格式:XXXX_2019-01-01.log. import os,datetime ...

  4. EasyUI datagrid 删除的时候无法正确找到重复记录row index的问题

    EasyUI datagrid 删除的时候无法正确找到重复记录row index的问题: 如果无法正确找到重复记录的row index,就需要进行注意添加的时候所进行的 操作:如果添加的时候就是添加的 ...

  5. MySQL--binlog和relay log的生成和删除

    ##================================================================================================== ...

  6. 12.2备库rman使用delete删除归档日志报错RMAN-08137: WARNING: archived log not deleted, needed for standby or upstream capture process

    问题: 客户环境12.2 dg备库环境,定时清理归档脚本并未正常清理归档日志文件. 观察日志可以发现存在如下信息 RMAN-08137: WARNING: archived log not delet ...

  7. 清理linux 某个文件夹下面所有的log文件

    #!/bin/sh #目标文件夹下面所有问题 target_dir="/app/" #删除2天前新建的后缀为log的文件 -name "*.log" -exec ...

  8. Linux命令行批量删除文件(目录)

    快速-批量删除文件或目录 1-1.快速删除大文件夹(注意目录后的结束符'/')(对于含有海量文件的目录,不能直接rm -rf删除,这样效率很慢:) rsync -a --delete blank/ t ...

  9. http 会话(session)详解

    会话(session)是一种持久网络协议,在用户(或用户代理)端和服务器端之间创建关联,从而起到交换数据包的作用机制 一.查看session id 可利用相关工具,比如firebug,httpwatc ...

随机推荐

  1. 【转】有效修改max open files/ulimit -n

    [转]有效修改max open files/ulimit -n_追梦20121222_新浪博客     [转]有效修改max open files/ulimit -n    (2011-11-18 0 ...

  2. Opencv实现图像的灰度处理,二值化,阀值选择

    前几天接触了图像的处理,发现用OPencv处理确实比較方便.毕竟是非常多东西都封装好的.可是要研究里面的东西,还是比較麻烦的,首先,你得知道图片处理的一些知识,比方腐蚀,膨胀,仿射,透射等,还有非常多 ...

  3. CSS 控制应为Html页面高度导致抖动的问题

    在CSS中添加如下代码: html,body{ overflow-y:scroll;} html,body{ overflow:scroll; min-height:101%;} html{ over ...

  4. QQ圈子降级为“应用”后应关注其隐私设置

    在之前的QQ版本中,QQ圈子的权限设置在“系统设置”对话框的“权限设置”中,如图所示. 但是在更新后的2013SP1版本中,“系统设置”对话框中的“权限设置”已经没有了“圈子权限” QQ圈子成了应用管 ...

  5. svn自动备份

    #!/bin/sh PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin export PATH DATE=` ...

  6. WM_ERASEBKGND官方解释(翻译),以及Delphi里所有的使用情况(就是绘制窗口控件背景色,并阻止进一步传递消息)

    #define WM_ERASEBKGND                   0x0014 Parameters wParam A handle to the device context. //  ...

  7. 辛星跟您玩转vim第一节之vim的下载与三种模式

    首先值得一提的是,我的vim教程pdf版本号已经写完了,大家能够去下载,这里是csdn的下载地址:点此下载 ,假设左边的下载地址挂掉了,也能够自行在浏览器以下输入例如以下地址进行下载:http://d ...

  8. Codeforces325-B(二分搜索)

    题目:B. Stadium and Games 分析:问题可以转化为下面的等式求解问题: 由于n在10^18范围内,所以k的范围是从0到63即可,这样就可以枚举k,二分m,然后所有符合条件的就是答案了 ...

  9. OpenCV-Python教程(4、形态学处理)

    提示: 转载请详细注明原作者及出处,谢谢! 本文介绍使用OpenCV-Python进行形态学处理 本文不介绍形态学处理的基本概念,所以读者需要预先对其有一定的了解. 定义结构元素 形态学处理的核心就是 ...

  10. Qt中提高sqlite的读写速度(使用事务一次性写入100万条数据)

    SQLite数据库本质上来讲就是一个磁盘上的文件,所以一切的数据库操作其实都会转化为对文件的操作,而频繁的文件操作将会是一个很好时的过程,会极大地影响数据库存取的速度.例如:向数据库中插入100万条数 ...