删除MySQL binlog日志的方法
对于比较繁忙的OLTP(在线事务处理)系统,由于每天生成日志量大,这些日志如果长时间不清除,将会对磁盘空间带来很大的浪费。因此,定期删除日志是DBA维护MySQL数据库的一个重要工作内容。下面跟大家分享几种删除MySQL binlog的方法。出自《深入浅出MySQL》第二版,如果你在虚拟机做实验导致binlog过大使得磁盘空间不多,下面的方法清理最合适不了过了
注意事项:
1.MySQL binlog日志是数据库灾难后恢复的关键,删除前一定要做好备份
2.如果做了MySQL主从,从服务器,会读取主服上的binlog,所以删除前要注意
3.个人建议,若真要删除binlog腾出硬盘空间,那先清理几个月前的binlog
方法一:
执行“RESET MASTER;”命令,该命令将删除所有BINLOG日志,新日志编号从“000001”开始。下例删除当前所有日志
mysql> system ls -ltr /data/mysql/
总用量
drwx------. mysql root 12月 : test
drwx------. mysql mysql 12月 : performance_schema
drwx------. mysql root 12月 : mysql
-rw-rw----. mysql mysql 12月 : mysql-bin.
-rw-rw----. mysql mysql 12月 : mysql-bin.
-rw-rw----. mysql mysql 12月 : ib_logfile1
-rw-rw----. mysql mysql 12月 : mysql-bin.
-rw-rw----. mysql mysql 12月 : mysql-bin.index
-rw-rw---- mysql mysql 12月 : localhost.localdomain.pid
-rw-r-----. mysql root 12月 : localhost.localdomain.err
drwx------ mysql mysql 12月 : testdb
-rw-rw----. mysql mysql 12月 : ibdata1
-rw-rw----. mysql mysql 12月 : ib_logfile0
drwx------ mysql mysql 12月 : database
-rw-rw---- mysql mysql 12月 : mysql-bin.
查看结果:
mysql> reset master;
Query OK, rows affected (0.12 sec) mysql> system ls -ltr /data/mysql/
总用量
drwx------. mysql root 12月 : test
drwx------. mysql mysql 12月 : performance_schema
drwx------. mysql root 12月 : mysql
-rw-rw----. mysql mysql 12月 : ib_logfile1
-rw-rw---- mysql mysql 12月 : localhost.localdomain.pid
-rw-r-----. mysql root 12月 : localhost.localdomain.err
drwx------ mysql mysql 12月 : testdb
-rw-rw----. mysql mysql 12月 : ibdata1
-rw-rw----. mysql mysql 12月 : ib_logfile0
drwx------ mysql mysql 12月 : database
-rw-rw---- mysql mysql 12月 : mysql-bin.
-rw-rw---- mysql mysql 12月 : mysql-bin.index
mysql>
第二种方法:
执行“PURGE MASTER LOGS TO 'mysql-bin.*******'”命令。该命令将删除“******”编号之前的所有日志。下例删除了“mysql-bin.000004”编号之前的所有日志:
mysql> system ls -ltr /data/mysql
总用量
drwx------. mysql root 12月 : test
drwx------. mysql mysql 12月 : performance_schema
drwx------. mysql root 12月 : mysql
-rw-rw----. mysql mysql 12月 : mysql-bin.
-rw-rw----. mysql mysql 12月 : mysql-bin.
-rw-rw----. mysql mysql 12月 : ib_logfile1
-rw-rw----. mysql mysql 12月 : mysql-bin.
-rw-rw----. mysql mysql 12月 : mysql-bin.index
-rw-rw---- mysql mysql 12月 : localhost.localdomain.pid
-rw-r-----. mysql root 12月 : localhost.localdomain.err
drwx------ mysql mysql 12月 : testdb
-rw-rw----. mysql mysql 12月 : ibdata1
-rw-rw----. mysql mysql 12月 : ib_logfile0
drwx------ mysql mysql 12月 : database
-rw-rw---- mysql mysql 12月 : mysql-bin.
执行命令后的结果如下:
mysql> purge master logs to 'mysql-bin.000004';
Query OK, rows affected (0.08 sec) mysql> system ls -ltr /data/mysql
总用量
drwx------. mysql root 12月 : test
drwx------. mysql mysql 12月 : performance_schema
drwx------. mysql root 12月 : mysql
-rw-rw----. mysql mysql 12月 : ib_logfile1
-rw-rw---- mysql mysql 12月 : localhost.localdomain.pid
-rw-r-----. mysql root 12月 : localhost.localdomain.err
drwx------ mysql mysql 12月 : testdb
-rw-rw----. mysql mysql 12月 : ibdata1
-rw-rw----. mysql mysql 12月 : ib_logfile0
drwx------ mysql mysql 12月 : database
-rw-rw---- mysql mysql 12月 : mysql-bin.
-rw-rw----. mysql mysql 12月 : mysql-bin.index
第三种方法以:
执行“PURGE MASTER LOGS BEFORE 'yyyy-mm-dd hh24:mi:ss'” 命令,该命令将删除日期为“hh24:mi:ss”之前产生的所有日志。下例中删除了日期在“2013-12-08 13:00:00”之前的所有日志:
mysql> system ls -ltr /data/mysql
总用量
drwx------. mysql root 12月 : test
drwx------. mysql mysql 12月 : performance_schema
drwx------. mysql root 12月 : mysql
-rw-rw----. mysql mysql 12月 : mysql-bin.
-rw-rw----. mysql mysql 12月 : mysql-bin.
-rw-rw----. mysql mysql 12月 : ib_logfile1
-rw-rw----. mysql mysql 12月 : mysql-bin.
-rw-rw----. mysql mysql 12月 : mysql-bin.index
-rw-rw---- mysql mysql 12月 : localhost.localdomain.pid
-rw-r-----. mysql root 12月 : localhost.localdomain.err
drwx------ mysql mysql 12月 : testdb
-rw-rw----. mysql mysql 12月 : ibdata1
-rw-rw----. mysql mysql 12月 : ib_logfile0
drwx------ mysql mysql 12月 : database
-rw-rw---- mysql mysql 12月 : mysql-bin.
执行命令后的结果:
mysql> purge master logs before "2013-12-08 13:00:00";
Query OK, rows affected (0.09 sec) mysql> system ls -ltr /data/mysql
总用量
drwx------. mysql root 12月 : test
drwx------. mysql mysql 12月 : performance_schema
drwx------. mysql root 12月 : mysql
-rw-rw----. mysql mysql 12月 : ib_logfile1
-rw-rw---- mysql mysql 12月 : localhost.localdomain.pid
-rw-r-----. mysql root 12月 : localhost.localdomain.err
drwx------ mysql mysql 12月 : testdb
-rw-rw----. mysql mysql 12月 : ibdata1
-rw-rw----. mysql mysql 12月 : ib_logfile0
drwx------ mysql mysql 12月 : database
-rw-rw---- mysql mysql 12月 : mysql-bin.
-rw-rw----. mysql mysql 12月 : mysql-bin.index
嘻嘻,如果想了解更多删除MySQL binlog的方法以,可以去参考官网或者书籍《深入浅出MySQL》第二版
|
作者:陆炫志 出处:xuanzhi的博客 http://www.cnblogs.com/xuanzhi201111 您的支持是对博主最大的鼓励,感谢您的认真阅读。本文版权归作者所有,欢迎转载,但请保留该声明。 |
删除MySQL binlog日志的方法的更多相关文章
- 删除mysql binlog日志
查看:mysql> show binary logs; 删除 mysql-bin.000200 之前binlog日志:mysql> purge binary logs to 'mysql- ...
- 安全删除mysql binlog日志
命令行下执行 show binary logs; purge binary logs to 'mysql-bin.000070';
- 【转载】mysql binlog日志自动清理及手动删除
说明:当开启mysql数据库主从时,会产生大量如mysql-bin.00000* log的文件,这会大量耗费您的硬盘空间.mysql-bin.000001mysql-bin.000002mysql-b ...
- mysql binlog日志自动清理及手动删除
说明:当开启mysql数据库主从时,会产生大量如mysql-bin.00000* log的文件,这会大量耗费您的硬盘空间.mysql-bin.000001mysql-bin.000002mysql-b ...
- 自动清理MySQL binlog日志
开启MySQL binlog日志的服务器,如果不设置自动清理日志,默认binlog日志一直保留着,时间一长,服务器磁盘空间被binlog日志占满,导致MySQL数据库出错. 使用下面方法可以安全清理b ...
- Mysql Binlog日志详解
一.Mysql Binlog格式介绍 Mysql binlog日志有三种格式,分别为Statement,MiXED,以及ROW! 1.Statement:每一条会修改数据的sql都会记录在 ...
- 删除MySQL二进制日志
服务器上的120G SSD硬盘空间用了92%,检查后发现,原来是 MySQL的二进制日志没有及时清除,占用了大量的空间, 于是直接用命令:reset master 一把删干净了. 1 reset ma ...
- 看数据库的文件大小 MySQL Binlog日志的生成和清理规则
小结: 1.避免并行大大事务对磁盘.内存的消耗: MySQL数据文件导致实例空间满的解决办法_空间/内存_常见问题_云数据库 RDS 版-阿里云 https://help.aliyun.com/kno ...
- MySQL binlog日志操作详解
MySQL的二进制日志可以说是MySQL最重要的日志了,它记录了所有的DDL和DML(除了数据查询语句)语句,以事件形式记录,还包含语句所执行的消耗的时间,MySQL的二进制日志是事务安全型的. bi ...
随机推荐
- Hbase远程连接:Can't get the locations
当Java API远程连接出错:Can't get the locations 原先填入的是IP地址,后来改为HOSTS文件中配置的主机名问题解决,如下红色字体部分: conf.set("h ...
- 【设计模式】—— 享元模式Flyweight
前言:[模式总览]——————————by xingoo 模式意图 享元模式,也叫[轻量级模式]或者[蝇量级模式].主要目的就是为了减少细粒度资源的消耗.比如,一个编辑器用到大量的字母数字和符号,但是 ...
- kubeadm安装部署kubernetes 1.11.3(单主节点)
由于此处docker代理无法使用,因此,请各位设置有效代理进行部署,勿使用文档中的docker代理.整体部署步骤不用改动.谢谢各位支持. 1.部署背景 操作系统版本:CentOS Linux rele ...
- pgm10
这部分讨论 MAP 估计.从某个角度上来说,我们可以将这个问题转换成为前面讨论过的: 这样一来我们只需要将原先的 sum-product 换成 max-sum 即可.话虽这么说,我们还是看看 Koll ...
- BZOJ2653 middle(二分答案+主席树)
与中位数有关的题二分答案是很常用的trick.二分答案之后,将所有大于它的看成1小于它的看成-1,那么只需要判断是否存在满足要求的一段和不小于0. 由于每个位置是1还是-1并不固定,似乎不是很好算.考 ...
- 【题解】 bzoj2748 [HAOI2012]音量调节 (动态规划)
懒得复制,戳我戳我 Solution: 傻逼题目,直接dp就可以了,他是求最后一次的最大值 Code: //It is coded by Ning_Mew on 4.17 #include<bi ...
- 【ARC082E】ConvexScore
Description 给定二维直角坐标系上的N个点\((X_i,Y_i)\),定义一个有N个点中的部分点所构成点集为"凸点集",当且仅当该集合内的所有点恰好构成一个面积为正的凸多 ...
- NO.3: 尽量使用const
1.尽量使用const修饰不会赋值操作的变量,防止 "无意义行为" 2.const成员函数遵守: bitwise constness 法则(只要函数内部不改变成员变量的,都是允许c ...
- 管理KVM虚拟机(二)
管理KVM虚拟机 工具:libvirt 官网:http://libvirt.org/ 介绍:Libvirt 库是一种实现 Linux 虚拟化功能的 Linux® API,它支持各种虚拟机监控程序,包括 ...
- Maven的国内镜像(解决jar下载过慢)
Maven简介 maven作为一个项目管理工具确实非常好用,结果在使用时候,你会发现下载jar速度不如自己在网上下载.之前oschina的中央仓库可用,现在oschina的maven服务器关了,只能拿 ...