简单整理MySQL的日志操作命令

1.首先确认你日志是否启用了

MySQL>show variables like 'log_bin';

如果启用了,即ON那日志文件就在MySQL的安装目录的data目录下

2.怎样知道当前的日志

MySQL> show master status;

3.看二进制日志文件用MySQLbinlog

shell>MySQLbinlog mail-bin.000001

或者

shell>MySQLbinlog mail-bin.000001 | tail

4.正确删除MySQL BIN-LOG 日志实操

在mysql中会生大量的如mysq-bin.000001这类日志文件了,这些都是二进制文件了,如果我们是普通的日志没有进行主从配置就可以直接使用reset master进行删除了这个方法很简单,
如果没有主从复制,可以通过reset master的方式,重置数据库日志,清除之前的日志文件:

mysql> reset master;

还有一各就是在my.cnf里配置。

expire_logs_days = 3

二进制日志自动删除的天数。这里设置了自动清除3天前的logs。

默认值为0,表示“没有自动删除”。

# 按文件:删除mysql-bin.000354之前的日志,不包含mysql-bin.000354

MYSQL>purge binary logs to 'mysql-bin.000354';

Query OK, 0 rows affected (0.16 sec)

# 按时间:删除2011-11-10 00:00:00 之前的日志

MYSQL>purge binary logs before '2011-11-10 00:00:00';

# 按时间:请理三天之前的日志

MYSQL> purge master logs before date_sub(now(), interval 3 day);

自动清理日志 :

# 修改my.cnf文件配置bin-log过期时间

expire-logs-days=7

max-binlog-size=268435456

如果你是主从mysql日志文件请参考下面方法

//删除日志之前,先检查主从服务器当前使用的日志文件,

//首先登录 要删除日志的服务器的 mysql 终端
#mysql -u root -pxxxxx

//检查复制主服务器状态
Mysql>show master status

+------------------+-----------+--------------+----------------------------------------+
| File       | Position | Binlog_Do_DB | Binlog_Ignore_DB            |
+------------------+-----------+--------------+----------------------------------------+
| mysql-bin.000097 | 541677824 | www   | test,mysql,information_schema |
+------------------+-----------+--------------+----------------------------------------+

//复制主服务器当前正在使用的日志文件是:mysql-bin.000097

//检查复制从服务器状态
Mysql>show slave statusG

//复制从服务器当前正在使用的复制主服务器日志文件是:mysql-bin.000103

//当前正在使用的日志文件是000097,我需要做的是删除00095号之前的所有日志(预留出最近几天的日志)
Mysql>purge master logs to ‘mysql-bin.000095;

#ll /usr/local/mysql/var/

//从结果中发现,编号000097之前的所有日志都已经删除
(0)

相关推荐

  • MySQL数据库基础命令大全(收藏)

    整理了一下mysql基础命令,分享一下 #启动,停止,重启MySql服务 service mysql start|stop|restart /etc/init.d/mysql restart|start|restart #连接MySQL数据库 mysql -h127.0.0.1 -uroot -p123456 #查看MySQL版本 select version() #显示数据库 show databases #使用数据库 use [database] #当前选择的数据库 select datab

  • LINUX启动/重启/停上MYSQL的命令(详解)

    如何启动/停止/重启MySQL 一.启动方式 1.使用 service 启动:service mysqld start 2.使用 mysqld 脚本启动:/etc/inint.d/mysqld start 3.使用 safe_mysqld 启动:safe_mysqld& 二.停止 1.使用 service 启动:service mysqld stop 2.使用 mysqld 脚本启动:/etc/inint.d/mysqld stop 3.mysqladmin shutdown 三.重启 1.使用

  • MySQL Proxy的安装及基本命令使用教程

    MySQL Proxy最壮大的一项功能是告终"读写离别(Read/Write Splitting)".它的原理是让主数据库处理事务性查询,而从数据库处理SELECT查询.数据库复制被用来把事务性查询导致的改变同步到集群中的从数据库. 0.必备软件: 1.LUA 能够去LUA的官方下载:dpa.nsysu.edu.tw/Downloads/MySQL-Proxy/. 可能去MYSQL官方下载源代码. 我这里下载了: mysql.cdpa.nsysu.edu.tw/Downloads/My

  • MySQL命令行中给表添加一个字段(字段名、是否为空、默认值)

    先看一下最简单的例子,在test中,添加一个字段,字段名为birth,类型为date类型. mysql> alter table test add column birth date; Query OK, 0 rows affected (0.36 sec) Records: 0  Duplicates: 0  Warnings: 0 查询一下数据,看看结果: mysql> select * from test; +------+--------+-----------------------

  • MySQL连接及基本信息查看命令汇总

    学习PHP就不得不提MySQL,虽然有phpMyadmin这样的工具可以图形化操作数据库,但我还是想借学习PHP的机会使用下命令行方式操作数据库.以下就是我的学习小结,包括命令行连接数据库,查看当前用户,查看当前使用的存储引擎,查看MySQL版本等基本命令. 连接数据库 命令格式:mysql -h hostname -u username -p -h指定要连接的MySQL数据库所在的主机,如果是本机,可以省略. -u指定登录的用户名,如果不指定,默认是操作系统的登录用户名. -p指定密码.可以在

  • MySQL命令行删除表中的一个字段

    先看看删除之前的表结构: mysql> select * from test; +------+--------+----------------------------------+------------+------------+------------+------------+ | t_id | t_name | t_password                       | t_birth    | birth      | birth1     | birth2     |

  • 简单整理MySQL的日志操作命令

    1.首先确认你日志是否启用了 MySQL>show variables like 'log_bin'; 如果启用了,即ON那日志文件就在MySQL的安装目录的data目录下 2.怎样知道当前的日志 MySQL> show master status; 3.看二进制日志文件用MySQLbinlog shell>MySQLbinlog mail-bin.000001 或者 shell>MySQLbinlog mail-bin.000001 | tail 4.正确删除MySQL BIN-

  • 简单了解MySQL存储引擎

    1. MySql体系结构 在介绍存储引擎之前先来介绍下MySql的体系结构,以便大家知道存储引擎在MySql整个体系中处于什么位置.下图是官方提供的一张架构图: MySQL体系结构图 从上图可以发现,MySQL由以下几部分组成: 连接池组件 管理服务和工具组件 SQL接口组件 查询分析器组件 优化器组件 缓冲(Cache)组件 插件式存储引擎 物理文件 MySQL数据库区别于其他数据库的最重要的一个特点就是其插件式的表存储引擎,从上图中也可以看到,MySql支持很多种存储引擎.需要特别注意的是,

  • 关于Mysql通用查询日志和慢查询日志分析

    MySQL中的日志包括:错误日志.二进制日志.通用查询日志.慢查询日志等等.这里主要介绍下比较常用的两个功能:通用查询日志和慢查询日志. 1.通用查询日志:记录建立的客户端连接和执行的语句. 2.慢查询日志:记录所有执行时间超过longquerytime秒的所有查询或者不使用索引的查询 一.通用查询日志 在学习通用日志查询时,需要知道两个数据库中的常用命令: 1) show variables like '%general%'; 可以查看,当前的通用日志查询是否开启,如果general_log的

  • 简单了解MySQL数据库优化技巧

    一个成熟的数据库架构并不是一开始设计就具备高可用.高伸缩等特性的,它是随着用户量的增加,基础架构才逐渐完善.这篇文章主要谈谈MySQL数据库在发展周期中所面临的问题及优化方案,暂且抛开前端应用不说,大致分为以下五个阶段: 阶段一:数据库表设计 项目立项后,开发部门根据产品部门需求开发项目. 开发工程师在开发项目初期会对表结构设计.对于数据库来说,表结构设计很重要,如果设计不当,会直接影响到用户访问网站速度,用户体验不好!这种情况具体影响因素有很多,例如慢查询(低效的查询语句).没有适当建立索引.

  • 详解MySQL 重做日志(redo log)与回滚日志(undo logo)

    前言: 前面文章讲述了 MySQL 系统中常见的几种日志,其实还有事务相关日志 redo log 和 undo log 没有介绍.相对于其他几种日志而言, redo log 和 undo log 是更加神秘,难以观测的.本篇文章将主要介绍这两类事务日志的作用及运维方法. 1.重做日志(redo log) 我们都知道,事务的四大特性里面有一个是 持久性 ,具体来说就是只要事务提交成功,那么对数据库做的修改就被永久保存下来了,不可能因为任何原因再回到原来的状态.那么 MySQL 是如何保证一致性的呢

  • 详解mysql慢日志查询

    慢日志查询作用 慢日志查询的主要功能就是,记录sql语句中超过设定的时间阈值的查询语句.例如,一条查询sql语句,我们设置的阈值为1s,当这条查询语句的执行时间超过了1s,则将被写入到慢查询配置的日志中. 慢查询主要是为了我们做sql语句的优化功能. 慢日志查询配置项说明 打开mysql,通过以下命令查看相关配置: mysql> show variables like '%query%'; +------------------------------+---------------------

  • mysql 重要日志文件汇总

    作者:丁仪 来源:https://chengxuzhixin.com/blog/post/mysql_zhong_yao_ri_zhi_wen_jian_zong_jie.html 日志是所有应用的重要数据,MySQL 也有错误日志.查询日志.慢查询日志.事务日志等.本文简单总结下各种日志,以备查阅. 二进制日志 binlog 二进制日志 binlog 用于记录数据库执行的写入性操作(不包括查询)信息,以二进制的形式保存在磁盘中.使用任何存储引擎的 mysql 数据库都会记录 binlog 日志

  • MySQL Binlog 日志处理工具对比分析

    Canal 定位:基于数据库增量日志解析,提供增量数据订阅&消费,目前主要支持了mysql. 原理: canal模拟mysql slave的交互协议,伪装自己为mysql slave,向mysql master发送dump协议 mysql master收到dump请求,开始推送binary log给slave(也就是canal) canal解析binary log对象(原始为byte流) 整个parser过程大致可分为几步: Connection获取上一次解析成功的位置(如果第一次启动,则获取初

  • MySQL事务日志(redo log和undo log)的详细分析

    目录 前言 1.redo log 1.1 redo log和二进制日志的区别 1.2 redo log的基本概念 1.3 日志块(log block) 1.4 log group和redo log file 1.5 redo log的格式 1.6 日志刷盘的规则 1.7 数据页刷盘的规则及checkpoint 1.8 LSN超详细分析 1.9 innodb的恢复行为 1.10 和redo log有关的几个变量 2.undo log 2.1 基本概念 2.2 undo log的存储方式 2.3 和

  • 一文详解MySQL Binlog日志与主从复制

    目录 1. Binlog日志的介绍 2. 主从复制 2.1 主从复制的流程 2.2 GTID 2.3 复制模型 2.4 MGR模式 2.5 并行回放 1. Binlog日志的介绍 Binlog是Binary log的缩写,即二进制日志.Binlog主要有三个作用:持久化时将随机IO转化为顺序IO,主从复制以及数据恢复.本文重点主从复制相关的问题. Binlog日志由一个索引文件与很多日志文件组成,每个日志文件由魔数以及事件组成,每个日志文件都会以一个Rotate类型的事件结束. 对于每个事件,都

随机推荐