Mysql清理二进制日志的技巧
admin
2023-04-15 11:41:13
0

1:二进制日志

二进制日志记录了所有的DDL(数据定义语言)语句和DML(数据操作语言)语句,但是不记录包括数据查询的语句。语句以“事件”的形式保存,它描述了数据的更改过程,此日志对于灾难时的数据恢复起着极其重要的作用

2:日志的位置和格式

当用—log-bin[=file_name]选项启动时,mysqld将包含所有更新数据的SQL命令写入日志文件。如果没有给出file_name值,默认名为主机名后面跟_bin,如果给出了文件名,但没有包含路劲,则文件默认被写入参数DATADIR(数据目录)指定的目录

3:日志的读取

由于日志以二进制的方式存储,不能直接读取,需要用mysqlbinlog工具来查看,语法如下:

#mysqlbinlog log_file

4:日志的删除

对于比较繁忙的OLTP系统,由于每天生产日志量大,这些日志如果长时间不清理,将会对磁盘空间带来很大的浪费,因此,定期删除日志是DBA维护MySQL数据库的一个重要工作内容,下面将介绍几种删除日志的常见方法

1):

执行“reset master;”命令,该命令将删除所有二进制日志,新日志的编号从“000001” 开始,命令如下

Mysql>reset master;


2):

执行“Purge master logs to ‘mysql-bin.*****’” 命令,该命令将删除“*****” 编号之前的所有日志,下列中删除了“mysql-bin.000001”之前编号的所有日志

Mysql>purge master logs to ‘mysql-bin.000015;


从结果中发现,编号000015之前的所有日志都已经删除

3):

执行“purge master logs before ‘yyyy-mm-dd hh34:min:ss’”命令,该命令将删除日期为“yyyy-mm-dd hh34:mi:ss”之前产生的所有日志,下列中删除了日期在“2010-05-22 01:00:00”之前的所有日志

Mysql>purge master logs before ‘2010-05-22 01:00:00’’;


4):

设置参数—expire_logs_days=#(days),此参数的含义是设置日志的过期天数,过来指定的天数后日志将会被自动删除,这样将有利于减少DBA管理日志的工作量。

#vi /etc/my.cnf
[mysqld]
--expire_logs_days=3


这样,3天前的日志都会被删除,系统自动删除


相关内容

热门资讯

东莞一社区推出生育奖励方案,二... 极目新闻记者 柳之萌近日,广东东莞万江街道谷涌社区出台生育奖励方案,对符合条件的二孩家庭一次性奖励1...
80寸液晶电视尺寸长宽多少厘米 80寸液晶电视尺寸长宽多少厘米:80寸的液晶电视大概为181x111厘米,即长度大概在181厘米,宽...
石膏线一般用多久会掉 大家在装修客厅吊顶的时候,一般都会用石膏线来装。石膏线的施工非常方便,而且装修价格也比较便宜,所以很...
10公分石膏线下挂尺寸 10公分石膏线下挂,大概在8公分左右,这样排出来的石膏线才会比较好看,而且边缘也会比较整齐一些,如果...
地漏怎么防臭呢,有专门的防臭地... 地漏下方的排水管要装S型储水湾,也有专门的防臭地漏 非常芯地漏就是防臭地漏,非常芯地漏原理:重...
12名农民工遭遇“车位抵薪”:... 极目新闻记者 舒隆焕陕西西安12名农民工遭遇“车位抵薪”一事有了最新进展。5月12日,极目新闻记者从...
实域科技申请立体相机及其控制方... 国家知识产权局信息显示,深圳实域科技有限公司申请一项名为“立体相机及其控制方法”的专利,公开号CN1...
从“一”到“十”,解码天舟十号... 5月11日8时14分,长征七号运载火箭托举着天舟十号货运飞船在文昌航天发射场腾空而起。约10分钟后,...
他是“遗传算法之父”,也是横跨... “约翰·亨利·霍兰德(John Henry Holland,1929年2月2日-2015年8月9日)...
人形机器人量产元年开启 产业链... 来源:21世纪经济报道 ● 本报记者 刘英杰 今年以来,人形机器人产业频频传来量产消息。从特斯拉弗里...