数据库
文章平均质量分 78
Bitkai
年轻嘛~就应该站在风口浪尖~
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
[MySQL]undo日志
1.为什么会有undo日志undo日志存在的意义何在?undo日志存在的意义就是为了保证事务的原子性.在innodb进行记录的增删改时,都需要把相应的undo日志记下来.它所解决的场景就是:当有些时候,事务偏偏执行到了一半就出问题了.这时候对于刚才已经执行了的语句怎么办?当然是回滚了, 设计数据库的大佬为了回滚而记录的东西被称为撤销日志[undo log]遵从WAL技术的原则,干啥都先写日志,有了操作日志那么回滚也就容易多了.需要注意的是:除了SELECT操作之外 INSER原创 2021-12-30 18:18:37 · 948 阅读 · 0 评论 -
[MySQL]redo日志
1.引言为了保证事务的持久性,一个很简单的方式就是在事务提交之前,将本次事务所做的修改操作都刷新到磁盘当中.但这种方式也存在着诸多的问题:如果每一次更新都需要写入磁盘那么这个IO成本有点高. 随机IO刷新起来比较慢,一个事务可能包含多个语句,这些语句可能会造成多个页中的数据被修改,也可能这些页也不相连,就会导致需要进行多次随机IO[随机IO比顺序IO还慢],IO成本过高其实,为了解决IO成本高的问题,MySQL提出了WAL技术(Write Ahead Log)WAL的核心思想在于: 先写.原创 2021-12-30 10:36:25 · 693 阅读 · 0 评论 -
[MySQL]事务
1.事务特性AICD其实,事务的本质就是若干个数据库操作的集合.并且这些集合都满足AICD的特性.1.1原子性Atomicity一个事务数据库中的最小执行单位,不能再拆分啦.事务中的操作要么全部执行成功,要么全部执行失败.1.2隔离性Isolution事务之间不相互影响.比如:脏读,未提交读,幻读,不可重复度,都是事务不同的隔离级别所导致的问题.使得事务之间相互影响.在保证数据操作满足原子性的同时,也要保证其他事务的执行不会影响到本次事务的执行.1.3一致性Con原创 2021-12-29 10:15:31 · 731 阅读 · 0 评论
分享