mysql日志文件后缀_MySQL中的日志类型(一)-摘要和日志的共同特征

MySQL中的日志类型

MySQL具有多种日志,用来记录mysqld的活动情况,以下为MySQL中的类型及其简要说明。

日志类型

说明

General query log

记录从客户端获取到的连接和语句

Slow query log

记录超过long_query_time时间的查询

Error log

记录在mysqld服务启动、运行或停止时遇到的问题

Binary log

记录修改数据的语句

Relay log

在复制结构中,从库从主库获取到的数据修改

DDL log(metadata log )

DD语句执行的元数据操作

默认情况下,除了Windows系统上的Error log,其他日志都是不可用的。

下面将按照日志的共同特征、每个日志的特点来讨论这些日志的情况

日志的共同特征

日志的启用

默认情况下,除了Windows系统上的Error log,其他日志都是不可用的,要开启这些日志,需要在数据库启动时指定相应的选项

日志类型

开启选项

General query log

--general_log

Slow query log

--slow_query_log

Binary log

--log-bin

Error log

--log-error

Relay log

不需要额外开启

DDL log

不需要额外开启

general query log和slow query log也可以在数据库运行时进行启用或禁用。可以通过设置全局变量general_log和slow_query_log来控制他们的启用和禁用,例如:

SET GLOBAL general_log = 'OFF';

SET GLOBAL slow_query_log = 'ON';

日志文件名称及位置

默认情况下,日志都存放在数据库的数据目录下。可以通过相应的选项来修改位置和名称。具体可以参考下表,在下表中,host_name代表数据库服务器的主机名,nnnnnn代表一个6位的整数序列。file_name和base_name是指定的文件名称。可以通过在file_name或base_name中使用绝对路径来修改日志存放的位置。

日志类型

默认名称

相应选项

General query log

host_name.log

--general_log_file=file_name

Slow query log

host_name-slow.log

--slow_query_log_file=file_name

Binary log

pif-file-bin

--log_bin=base_name

Error log

host_name.err

--log_error=file_name

Relay log

hostname-relay-bin.nnnnnn

--relay-log=file_name

DDL log

ddl_log.log

无法修改

general query log和slow query log除了记录在日志文件中以外,也可以记录在日志表中。日志表在mysql库中。名称分别为general_log和slow_log。可以通过--log-output来指定将这两种日志的存放位置,位置可以是表、文件、或者表和文件。

Binary log日志文件的默认名称是pid-file的值加上-bin后缀。默认pid-file的值是服务器的主机名。但是不建议使用默认值,当使用默认值时,如果服务器的主机名发生变更,Binary log日志文件的名称也需要进行相应更改。

日志刷新

日志刷新会关闭然后重新打开日志文件。对于binary log和relay log,还会创建一个新的日志文件。

日志刷新发生在以下情况下:

1.使用FLUSH LOGS语句

2.使用带有flush-logs或者reflush选项的mysqladmin命令

3.使用带有--flush-logs或者--master-data选项的mysqldump命令

FLUSH LOGS语句会关闭并重新打开所有的日志文件,如果需要只刷新某种日志文件,需要指定日志类型,例如:

FLUSH SLOW LOGS

日志记录时间

日志类型

记录时间

generl query log

在服务器接收到客户端发来的命令时就写入到日志中。

slow query log

在语句执行完毕,释放锁之后写入到日志中。

binary log

在语句执行完毕,释放锁之前写入到日志中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值