没想到MySQL还会问这些...
前言 文本已收录至我的GitHub精选文章,欢迎Star : https://github.com/ZhongFuCheng3y/3y 在前一阵子,大哥问过我:”你知道MySQL的原子性是怎么保证的吗“。我懵逼了,MySQL怎么保证原子性?我不会啊。 谁都知道在事务里边原子性的意思:” 一个事务包含多个操作,这些操作要么全部执行,要么全都不执行 “ 于是大哥就给我讲:”用的就是 undo log 啊“。 我:”卧槽,又是知识盲区“ 后来在网上翻了一下,MySQL里边还有几种常见的 log ,分别为: undo log binlog redo log 如果你也未曾关注过这些 log ,麻烦在评论区给我留个言, 让我觉得不是只有我一个人这么菜,行不行 ? 后来我又去搜了一下,其实这几种log在 面试 的时候也经常会问到,这篇文章以最简单的方式来讲讲,希望对大家有帮助。 一、什么是binlog binlog 其实在日常的开发中是听得很多的,因为很多时候数据的更新就依赖着 binlog 。 举个很简单的例子:我们的数据是保存在数据库里边的嘛,现在我们对某个商品的某个字段的内容改了(数据库变更),而 用户检索的出来数据是走搜索引擎的 。为了让用户能搜到最新的数据,我们需要把引擎的数据也改掉。 一句话: 数据库的变更,搜索引擎的数据也需要变更 。 于是,我们就会监听 binlog 的变更,如果