本文主要是介绍MySQL中binlog及其删除purge,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
-
binlog
binlog是MySQL中的二进制日志。它记录了所有的 DDL 和 DML 语句(除了数据查询语句select、show等),以事件形式记录,还包含语句所执行的消耗的时间,MySQL的二进制日志是事务安全型的。binlog 的主要目的是复制和恢复。
MySQL下有多种日志:
日志类型 写入日志的信息 错误日志 记录在启动,运行或停止mysqld时遇到的问题 通用查询日志 记录建立的客户端连接和执行的语句 二进制日志 记录更改数据的语句 中继日志 从复制主服务器接收的数据更改 慢查询日志 记录所有执行时间超过 long_query_time
秒的所有查询或不使用索引的查询DDL日志(元数据日志) 元数据操作由DDL语句执行 -
purge
> help purge # 查看purge命令 > PURGE BINARY LOGS TO 'binlogname'; # 删除至某一个文件为止 > PURGE BINARY LOGS BEFORE 'datetimestamp'; # 删除到某个日期为止
通过mysql提供的工具来删除更安全。因为purge会更新mysql-bin.index中的条目,而直接删除的话,mysql-bin.index文件不会更新。mysql-bin.index的作用是加快查找binlog文件的速度。
-
References
- Is it safe to delete mysql-bin files?
- mysql的binlog安全删除
- MySQL Binlog 介绍
- mysql binlog应用场景与原理深度剖析
这篇关于MySQL中binlog及其删除purge的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!