查看MySql事务日志

1.简介

装mysql并运行一段时间后,在mysql目录下出现一堆类似mysql-bin.000***,从mysql-bin.000001开始一直排列下来,而且占用了大量硬盘空间,高达十几个G.。原来mysql-bin.000001、mysql-bin.000002等文件是数据库的操作日志,例如UPDATE一个表,或者DELETE一些数据,即使该语句没有匹配的数据,这个命令也会存储到日志文件中,还包括每个语句执行的时间,也会记录进去的。 这些形如mysql-bin.00001的文件主要是用来做什么的呢?

1、数据恢复

如果你的数据库出问题了,而你之前有过备份,那么可以看日志文件,找出是哪个命令导致你的数据库出问题了,想办法挽回损失。

2、主从服务器之间同步数据

主服务器上所有的操作都在记录日志中,从服务器可以根据该日志来进行,以确保两个同步。


2.查看方式


mysqlbinlog 查看binlog 日志
 
[root@blogweb blog]# mysqlbinlog --no-defaults /data/blog/mysqld-relay-bin.000035  | grep wp_user | grep 29069
                ( 29069, 'wp_user_level', '5' )/*!*/;
UPDATE wp_users SET r_id=5,r_site='5' WHERE ID = 29069/*!*/;
insert into wp_usermeta set user_id=29069,meta_key='primary_blog',meta_value='29069'/*!*/;

引用:
http://ggmmchou.blog.163.com/blog/static/5933314920099211380345/
http://wangheng.org/clear-the-mysql-log-bin-log.html

MySQL 提供了多种日志类型来记录数据库的操作情况,帮助管理员监控和调试数据库的运行状态。要查看 MySQL 的操作日志,主要涉及以下几种日志类型及其查看方式: ### 通用查询日志 通用查询日志记录了所有连接到 MySQL 服务器的客户端所执行的 SQL 语句。可以通过配置文件启用并指定日志文件的位置。例如,在 `my.cnf` 或 `my.ini` 文件中添加如下配置: ```ini [mysqld] general_log = 1 general_log_file = /path/to/your/general.log ``` 启用后,可以直接使用文本编辑器打开日志文件进行查看。在 Linux 系统下,可以使用命令如 `tail -f /path/to/your/general.log` 来实时查看日志文件的变化 [^3]。 ### 慢查询日志 慢查询日志用来记录执行时间超过指定阈值(默认是 10 秒)的 SQL 语句。这有助于识别需要优化的查询。同样地,在配置文件中设置慢查询日志的相关参数: ```ini [mysqld] slow_query_log = 1 slow_query_log_file = /path/to/your/slow.log long_query_time = 2 ``` 这里 `long_query_time` 参数定义了慢查询的时间阈值,单位为秒。之后也可以通过文本编辑器或命令行工具查看慢查询日志内容 [^1]。 ### 二进制日志 二进制日志记录了所有对数据库数据和结构的更改操作,对于灾难恢复和主从复制非常有用。要查看二进制日志的内容,首先需要确定哪些二进制日志文件存在,可以使用以下 SQL 命令: ```sql SHOW BINARY LOGS; ``` 输出将列出所有的二进制日志文件及其大小。为了读取这些二进制日志文件的内容,可以使用 `mysqlbinlog` 工具。假设你想查看名为 `mysql-bin.000001` 的日志文件,可以在命令行中运行: ```bash mysqlbinlog /path/to/mysql-bin.000001 ``` 如果二进制日志位于远程服务器上,则可能需要先将其复制到本地机器再进行解析 [^4]。 ### 错误日志 错误日志包含了 MySQL 服务启动、运行或停止过程中遇到的问题信息。它通常位于数据目录下,文件名可能是 `hostname.err`。错误日志同样可以通过文本编辑器或者命令行工具查看 [^2]。 ### 重做日志 重做日志是 InnoDB 存储引擎特有的日志机制,用于保证事务的持久性和崩溃恢复。重做日志文件通常位于数据目录下的 ibdata 文件中,或者是独立的 `.ibd` 文件。这类日志不是以普通文本形式存储,因此不能直接用文本编辑器查看,而是需要特定的工具和技术来分析 [^2]。 以上就是 MySQL 中几种主要的操作日志以及它们的基本查看方法。每种日志都有其特定用途,根据实际需求选择合适的日志类型进行监控和分析是非常重要的。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值