MySQL--binlog和relay log的生成和删除
2018-06-18 01:35:03来源:未知 阅读 ()
##==================================================================================================##
binlog文件生成:在每条二进制日志写入到日志文件后,会判断该文件是否超过max_binlog_size,如果超过则生成一个新的binlog
relay log文件生成:每从Master fetch一个events后,判断当前文件是否超过max_relay_log_size 如果超过则自动生成一个新的relay-log-file
##==================================================================================================##
binlog文件删除机制:
1、当使用RESET MASTER命令后,会清空全部二进制日志
命令:RESET MASTER;
2、当执行PURGE MASTER LOG TO命令后,会删除指定binlog以及之前的二进制日志
命令:PURGE MASTER LOGS TO 'binlog file name';
3、当执行PURGE MASTER LOG BEFORE 命令后,会删除指定时间前的所有二进制
命令:PURGE MASTER LOGS TO 'datetime';
4、当实例启动或执行flush logs时,按照expire_logs_days设置,如果超过该参数指定天数的二进制会被全部删除
命令:mysqladmin flush-log
##==================================================================================================##
binlog文件删除顺序:
先从文件系统中删除binlog文件,在修改binlog的索引文件。
##==================================================================================================##
relay log删除机制
1、在SQL Thread每执行完一个events时判断,如果该relay-log 已经不再需要则自动删除
2、在实例重启或执行flush log时判断relay-log是否超过expire-logs-days的设定值,超过purge file
3、在执行reset slave时删除所有relay-log
##==================================================================================================##
##查看文件日期
ll -h --time-style='+%Y-%m-%d %H:%M:%S' mysql-bin*
##==================================================================================================##
补充知识:
1、在使用mysqldump备份时,可以指定参数--flush-logs来在备份开始前刷新日志
2、参数expire-logs-days的默认值为0,会导致relay-log在flush logs时没有自动清除。
3、除参数binlog-format外,参数binlog_row_image也会影响binlog日志文件大小,尤其当包含blob等大字段记录行被更新时。
4、参数binlog_rows_query_log_events用来在binlog中存放导致数据变化的“原始SQL”,该参数默认不启用,在部分场景中可以开启该参数来排查。
##==================================================================================================##
关闭会话级别的BINLOG
如果不希望当前会话的行为被记录到binlog中,可以使用参数sql_log_bin来禁用:
SET SESSION SQL_LOG_BIN=0
比如在主库上进行数据删除,或在主库上创建索引,但不希望传递到从库时,可以采用此方式处理
##==================================================================================================##
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:mysq数据库相关操作
下一篇:mysql复制表结构和数据
- mysql手动删除BINLOG 2019-09-23
- PHP生成带有logo和底图的支付二维码 2019-08-29
- 如何解决log引起的mysql不能启动 2019-08-23
- 恢复误删除表黑科技之relay log大法(续) 2018-08-02
- MySQL的binlog恢复(Windows下) 2018-08-02
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash