SQL日志

Mysql日志相关

此处了解即可,面试中知道如何回答即可,mysql内部日志主要区分为:

事务日志

工作模式:基于InnoDB存储引擎的MySQL之所以可以从崩溃中恢复,正是依赖于事务日志,当数据库实例宕机后,重启时MySQL会自行检查事务日志,然后依次处理;
事务日志分为redo log和undo log两种:
(1)、对于事务日志中未正常提交的事务,则会记录到undo log中,因为事务未正确执行完,因此必须回滚,从而保证数据一致性
(2)、对于事务日志中已正常提交但未同步到持久化存储上时,则会记录到redo log中,因此MySQL会重新执行一遍事务,然后让数据存储到磁盘上,从而保证数据一致性

二进制日志

MySQL中的二进制日志(binary log)是一个二进制文件,主要用于记录可能引起数据库内容更改的SQL语句或数据行记录,例如新增(Insert)、更新(Update)、删除(Delete)、授权信息变更(Grant Change)等,除记录这些外,还会记录变更语句的发生时间、执行时长、操作数据等额外信息,但是它不会记录诸如Select、Show等这些不会引起数据修改的SQL语句。
binary log 主要用于主从复制等集群模式

慢日志与错误日志

(errlog)错误日志,作用:Mysql本身启动,停止,运行期间发生的错误信息
(slow query log)慢查询日志,  作用:记录执行时间过长的sql,时间阈值可以配置,只记录执行成功

posted @ 2022-06-16 09:18  Faetbwac  阅读(97)  评论(0编辑  收藏  举报