mysql执行日志文件在哪

发布时间: 2023-11-21 12:56 阅读: 文章来源:1MUMB4525PS
面试官问题:

说一说MySQL的日志文件内容?

说一说你对MySQL重做日志的了解?

MySQL重做日志时用来干什么的?

背景:

MySQL中有六种日志文件分别是:重做日志(redo log)、回滚日志(undo log)、二进制日志(binlog)、错误日志(errorlog)、慢查询日志(slow query log)、一般查询日志(general log),中继日志(relay log)。

你的回答:

重做日志(redo log)

作用:

确保事务的持久性。防止在发生故障的时间点,尚有脏页未写入磁盘,在重启mysql服务的时候,根据redo log进行重做,从而达到事务的持久性这一特性。

内容:

物理格式的日志,记录的是物理数据页面的修改的信息,其redo log是顺序写入redo log file的物理文件中去的。

什么时候产生:

事务开始之后就产生redo log,redo log的落盘并不是随着事务的提交才写入的,而是在事务的执行过程中,便开始写入redo log文件中。

什么时候释放:

当对应事务的脏页写入到磁盘之后,redo log的使命也就完成了,重做日志占用的空间就可以重用(被覆盖)。

•••展开全文