`
xiaojiit
  • 浏览: 133177 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

MySQL删除二进制日志

 
阅读更多

一、设置日志保留时长expire_logs_days自动删除

       

  1. #查看当前日志保存天数:   
  2. show variables like ‘%expire_logs_days%’;  
  3. #这个默认是0,也就是logs不过期,可通过设置全局的参数,使他临时生效:   
  4. set global expire_logs_days=7;   
  5. #设置了只保留7天BINLOG, 下次重启mysql这个参数默认会失败,所以需在my.cnf中设置   
  6. expire_logs_days = 7  

二、手动删除BINLOG (purge binary logs)

  1. #用于删除列于在指定的日志或日期之前的日志索引中的所有二进制日志。这些日志也会从记录在日志索引文件   
  2. PURGE {MASTER | BINARY} LOGS TO ‘log_name’  
  3. PURGE {MASTER | BINARY} LOGS BEFORE ‘date’   
  4. #例如:   
  5. PURGE MASTER LOGS TO ‘mysql-bin.010′;  
  6. PURGE MASTER LOGS BEFORE ‘2008-06-22 13:00:00′;  
  7. PURGE MASTER LOGS BEFORE DATE_SUB( NOW( ), INTERVAL 3 DAY);  

其它:

  1. 查看当前日志文件列表:show binary logs; 

使用binlog日志的目的是为了方便恢复数据,所以我们不光要会删除,还要会用日志来恢复数据。

使用binlog恢复数据:

使用mysqlbinlog命令恢复日志

  1. mysqlbinlog -d test /root/mysql/mysql-bin.000001|mysql -uroot -ppassword   
  2.  
  3. ※附录   
  4.  
  5. #1、关于mysqlbinlog在mysql 5.0上的使用方法,可以参考:官方资料   
  6.  
  7. #2、如果不知道log-bin存放的文件位置,可以使用下面的命令查看:   
  8.  
  9. mysql -uroot -ppassword -e 'SHOW BINLOG EVENTS \G'   
  10.  
  11. #3、当只是需要恢复部分记录的时候,你可以使用时间点或位置点来定位,例如:   
  12.  
  13. mysqlbinlog --start-date="2005-04-20 9:01:00" --stop-date="2005-04-20 10:00:01" /var/log/mysql/bin.123456|mysql -uroot -ppassword[code]   
  14.  
  15. #意思是恢复4月20日早上9点到10点这一段时间的数据。   
  16.  
  17. mysqlbinlog --start-position="368301" --stop-position="368312"/var/log/mysql/bin.123456| mysql -uroot -pmypwd   
  18.  
  19. #意思是重做368301到368312位置点之间的操作。(位置点可以就是用mysqlbinlog看到的at xxx节点)   
  20.  
  21. mysqlbinlog --start-date="2005-04-20 9:55:00" --stop-date="2005-04-20 10:05:00" /var/log/mysql/bin.123456 > /tmp/mysql_restore.sql   
  22.  
  23. #同样的,如果我们只是想查看某段时间的操作,直接把它导到一个文件即可。  

 

分享到:
评论

相关推荐

    linux MySQL 8.0二进制包安装

    Linux MySQL 8.0 二进制包安装 MySQL 是一个广泛使用的开源关系型数据库管理系统,最新版本为 8.0。在 Linux 系统中,安装 MySQL 8.0 二进制包需要按照以下步骤进行。 首先,下载 MySQL 8.0 二进制包。可以从官方...

    从MySQL ROW二进制日志还原更新。Undelete-Mysql.zip

    首先,MySQL的ROW格式二进制日志记录了对数据库表进行的每一项操作的细节,包括插入、更新和删除。这种格式的好处在于它不依赖于特定的SQL语句,而是记录了实际的数据变化,因此在某些情况下,如表结构改变或无法...

    数据库MySQL二进制恢复

    MySQL的二进制日志支持两种格式:基于语句的二进制日志(SBR, Statement-Based Replication)和基于行的二进制日志(RBR, Row-Based Replication)。 - **基于语句的二进制日志**:记录SQL语句本身,适用于大多数情况,...

    mysqlbinlog二进制日志资料.pdf

    MySQL的二进制日志(Binary Log)是数据库系统中用于记录所有更改数据的SQL语句的重要工具,它对于数据库的备份、恢复以及故障排查至关重要。`mysqlbinlog`是MySQL提供的一款命令行实用程序,专门用于处理和解析二...

    详解如何通过Mysql的二进制日志恢复数据库数据

    MySQL的二进制日志(Binary Log)是数据库系统中用于记录所有更改数据的SQL语句的一种机制,它对于数据库的恢复和复制至关重要。当数据意外丢失或需要回滚到某一特定时间点时,二进制日志就成为恢复数据的关键工具。...

    mysql binlog二进制日志详解

    - 也可以使用 `RESET MASTER` 命令删除所有之前的二进制日志并重新生成新的日志。 - 注意:如果存在正在读取这些日志的活动从属服务器,则此命令将失败并显示错误。 2. **记录到二进制日志的内容配置:** - 可以...

    centos7二进制安装MySQL5.7.docx

    CentOS 7上二进制安装MySQL 5.7的过程涉及多个步骤,这些步骤确保了数据库服务能够正确、稳定地运行。以下是对整个过程的详细解释: 1. **安装依赖包**: 在安装MySQL之前,需要确保系统中有必要的依赖库。在...

    mysql binlog(二进制日志)查看方法

    MySQL的二进制日志(Binary Log,简称binlog)是数据库系统中至关重要的一部分,它记录了所有对数据库进行更改的事务,包括CREATE、ALTER、DROP等DDL语句以及INSERT、UPDATE、DELETE等DML语句。二进制日志对于数据...

    mysql二进制日志文件恢复数据库

    二进制日志文件主要用于记录用户对数据库执行的各种操作,比如数据插入、更新、删除等。它们记录的是对数据表进行更改的所有SQL语句的二进制形式。这些日志文件在数据库发生错误时,配合数据库备份文件,能够帮助...

    MySQL 5.7.22 二进制包安装及免安装版Windows配置方法

    - `log-bin` 和 `binlog_format`:开启二进制日志,设置日志格式。 - `expire-logs-days`:设置二进制日志自动清理策略。 - `character_set_server` 和 `collation_server`:定义字符集和排序规则。 - `max_...

    MySQL数据库日志管理.ppt

    删除二进制日志可以使用RESET MASTER语句删除所有二进制日志,也可以使用PURGE MASTER LOGS语句删除指定的日志文件。使用二进制日志还原数据库可以使用mysqlbinlog工具从指定的时间点开始恢复的数据。可以暂时停止二...

    mysql中mysql-bin.000001是什么文件可以删除吗

    MySQL中的`mysql-bin.000001`文件是二进制日志文件,它是MySQL数据库系统的重要组成部分。这个文件记录了数据库的所有更改操作,如INSERT、UPDATE、DELETE等,以及DDL(Data Definition Language)语句,如CREATE ...

    mysql根据日志恢复数据详细步骤

    本文将详细介绍如何利用MySQL的二进制日志(Binlog)来恢复丢失的数据,并通过具体案例进行说明。 #### 二、基础知识介绍 1. **二进制日志(Binlog)** - **概念**:二进制日志是MySQL的一种日志类型,它记录了...

    mysql 5.7.19 二进制最新安装

    本文将详细介绍如何在Linux环境下进行MySQL 5.7.19的二进制安装,并涵盖了一些关键的优化步骤。 **一、优化部分** 1. **操作系统参数调优**:在安装MySQL之前,为了提升数据库的性能,需要调整操作系统的参数。这...

    MySQL日志和数据恢复

    MySQL提供`PURGE BINARY LOGS`命令用于删除旧的二进制日志。 7. 性能优化 - 日志大小限制:适当调整日志文件大小,避免日志文件过大导致磁盘空间耗尽。 - 日志格式:选择合适的日志格式,如ROW、STATEMENT或MIXED...

    mysql binlog

    MySQL二进制日志(binlog)是MySQL数据库服务器的一个重要组件,用于记录所有更改数据或可能更改数据的语句,这些语句包括数据修改语句(INSERT、UPDATE、DELETE等)、DDL语句(如CREATE、ALTER、DROP等),以及其他...

Global site tag (gtag.js) - Google Analytics