:MySQL数据库第22节:MySQL - 必知必会(下)
Posted 温柔狠角色
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了:MySQL数据库第22节:MySQL - 必知必会(下)相关的知识,希望对你有一定的参考价值。
大家好,上一小节中我们对mysql中的索引和存储引擎做了简单的介绍。本小节中,我们接着学习MySQL相关知识点,包括日志模块,锁机制以及事务等重要知识点,希望大家可以有效理解与掌握。
(1)MySQL的日志模块binlog和redo log有了解吗?
答:在MySQL的使用中,更新操作也是很频繁的,如果每一次更新操作都根据条件找到对应的记录,然后将记录更新,再写回磁盘,那么IO成本以及查找记录的成本都很高。所以,出现了日志模块,即我们的update更新操作是先写日志,在合适的时间才会去写磁盘,日志更新完毕就将执行结果返回给了客户端。
MySQL中的日志模块主要有redo log(重做日志)和binlog(归档日志)。
redo log:
redo log是InnoDB引擎特有的日志模块,redo log是物理日志,记录了某个数据页上做了哪些修改。InnoDB的redo log是固定大小的,比如可以配置为一组4个文件,每个文件的大小是1GB,那么redo log总共就可以记录 4GB的操作。从头开始写,写到末尾就又回到开头循环写。
InnoDB的redo log保证了数据库发生异常重启之后,之前提交的记录不会丢失,这个能力称为crash-safe。
以上是关于:MySQL数据库第22节:MySQL - 必知必会(下)的主要内容,如果未能解决你的问题,请参考以下文章