MVCC(数据库多版本并发控制)

前面的文章说到数据库的事务问题,在innodb引擎四个隔离级别(读未提交RU;读已提交RC;可重复读RR;可串行化Serializable)中,而MVCC只适用于RC和RR。

一、什么是MVCC

Multi-Version Concurrency Control,就是在事务执行过程中加入“版本”这个概念、MVCC的实现,通过保存数据在某个时间点的快照来实现的。

1、MVCC优缺点

MVCC在大多数情况下代替了行锁,实现了对读的非阻塞读不加锁读写不冲突。缺点是每行记录都需要_额外的存储空间_,需要做更多的行维护和检查工作。


漫谈数据库事务(一)事务、事务隔离级别

该节内容为漫谈,内容相对比较多。

首先说明一下:事务不只是关系型数据库独有,非关系型数据库也有事务。只要在高并发或在短时间内操作做多条(批量,状态改变)数据的情况下,大都,注意是大都,而不是全部。

说事务,但解决问题的最好的办法是避免使用事务。在日常开发中要是迫不得己那就用下事务吧。目前大型国企在事务处理上大都选择orical ,一般私营企业还是选择MySQL,使用MySQL来处理事务,在MySQL中用的最多的存储引擎有:innodb,bdb,myisam ,memory 等。其中innodb和bdb支持事务而myisam等不支持事务。这也是 innodb和myisam的重要区别之一。


shell 批量关闭端口

在开发小程序的时候 频繁的 npm run dev 每次都会占用一个端口。

为了一起杀死这些连续的端口,特意写了一个shell脚本。