MySQL 日志管理详解

一、日志分类

错误日志

查询日志

慢查询日志

二进制日志

中继日志

事务日志

滚动日志

二、日志详解

1.错误日志

说明:在对应的数据目录中,以主机名+.err命名的文件,错误日志记录的信息类型:

记录了服务器运行中产生的错误信息

记录了服务在启动和停止是所产生的信息

在从服务器上如果启动了复制进程的时候,复制进程的信息也会被记录

记录event错误日志

配置mysql的主配置文件:

2.查询日志

说明:对除了慢查日志中记录的查询信息都将记录下来,这将对服务器主机产生大量的压力,所以对于繁忙的服务器应该关闭这个日志

与查询日志相关的变量,

3.慢查询日志

说明:默认为关闭状态,记录下来查询时间超过设定时长的查询,这些查询日志将被慢查日志记录下来

配置mysql的主配置文件:

4.二进制日志

说明:默认开启,精确的记录了用户对数据库中的数据进行操作的命令和操作的数据对象。

二进制日志文件的作用:

提供了增量备份的功能

提供了数据基于时间点的恢复,这个恢复的时间点可以由用户控制

为mysql的复制架构提供基础,将这主服务器的二进制日志复制到从服务器上并执行同样的操作,就可将数据进行同步

二进制日志格式:

基于语句 statement

基于行 row

混合方式 mixed

二进制日志事件:

position 基于位置

datetime 基于时间

二进制日志的查看与删除方式:

文件系统中查看二进制日志的命令:

配置mysql的主配置文件:

注:一般建议将binlog日志与数据文件分开存放,不但可以提高mysql性能,还可以增加安全性!

5.中继日志

说明:主要是在mysql服务器的中从架构中的从服务器上用到的,当从服务器想要和主服务器进行数据的同步时,从服务器将主服务器的二进制日志文件拷贝到己的主机上放在中继日志中,然后调用SQL线程按照拷中继日志文件中的二进制日志文件执行以便就可达到数据的同步

开启的方法:(只在从服务器上开启)

配置mysql的主配置文件:

6.事务日志

说明:详细的记录了在什么时间发生了什么时候,在哪个时间对哪些数据进行了改变,能后实现事件的重放,一般只记录对数据进行改变的操作,对于读操作一般不进行记录。

事物日志为数据库服务器实现以下功能:

(1).将随机IO转换为顺序IO,大大的提高了数据库的性能,存储的数据可能存在在磁盘的不同位置,降低了数据的读取和操作性能。转换为顺序IO的原理为,先将数据存放在日志文件中,然后由RDBSM的后台将日志中的数据存放到磁盘上,这样就保证了存储的数据是连续的。

(2).为事件重放提供基础,事务日志详细的记录了时间发生的时间以及操作的数据对象,事务进程可以根据这些信息进行时间重放。

默认的事务日志文件有两个,位于数据目录下以ibdata+number结尾的数字,我们可以对事务日志的位置、文件大小、增长方式进行定义,定义的方法如下:

这里以使用支持事务的Innodb存储引擎为例,

配置mysql的主配置文件:

7.滚动日志

说明:只要是针对二进制日志进行滚动的,对某个类型的日志文件滚动一次就生成一个新的相对应的日志文件,通过这种方法保证日志文件的特定大小,从而保证服务器在对日志文件查询时有较高的响应能力。

滚动二进制日志的命令:

三、总结

通过上面的学习,大家应该对mysql日志管理有所了解

长按或扫描上述二维码即可关注云测学院微信公众号

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180116B031N000?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券