> 数据库 > MySQL >

mysql 日志文件说明

1.错误日志 Error Log

 

错误日志记录了mysql server 运行过程中所有较为严重的警告和错误信息,以及mysql每次启动和关闭的详细信息。

开启方法在启动mysql 时候加上--log-error选项。错误日志默认放在数据目录下,以hostname.err命名。但是可以使用命令--log-error[=file_name]修改其存放目录和文件名。

 

有时候,希望将错误日志做备份并重新开始记录,使用flush logs命令备份文件以.old结尾。

 

2.二进制日志:Binary Log&Binary Log Index

 

就是常说的binlog,是mysql中最为重要的日志之一。在通过--log-bin[=file_name]打开记录的功能之后,mysql会将所有修改数据库数据的query以二进制的时候记录到日志文件中,其中包括每一条query所执行的时间,所消耗的资源,以及相关事务信息,如果没有指定file_name,会在数据目录下记录为mysql-bin.****。

 

binlog还有其他一些附加选项参数:

--max_binlog_size设置binlog的最大存储上限,当日志到达这个上限的时候,会重新创建一个文件记录。

--binlog-do-db=db_name参数告诉mysql只对某个数据库记录binlog

--binlog-ignore-db=db_name参数告诉mysql忽略对某个数据库记录binlog

 

3.更新日志:update log

 

mysql5.0以后不支持,和binlog类似,但是不是以二进制形式记录,是简单的文本格式记录

 

4.查询日志:query log

 

查询日志记录mysql中所有的query,可通过--log[=file_name]来打开该日志,由于记录了所有的query,体积庞大,开启后对性能也有较大的影响,只在跟踪某些特殊的query性能问题时候才会短暂开启该功能。默认的文件名hostname.log。

 

5.慢查询日志:slow query log

 

通过--log-slow-queries[=file_name]来打开该功能并设置记录位置和文件名,默认文件名:hostname-slow.log,默认目录也是数据目录。

 

6InnoDB的在线的REDO日志:InnoDB REDO Log

 

REDO日志中记录了InnoDB所做的所有物理变更和事务信息,通过REDO日志和UNDO信息,InnoDB保证了在任何情况下的事务安全性。InnoDB的REDO日志同样默认存放在数据目录下,可以通过innodb_log_group_home_dir来更改设置日志的存放位置。通过innodb_log_files_in_group设置日志的数量。

(责任编辑:IT)