欢迎光临散文网 会员登陆 & 注册

风哥双OCP认证培训(Oracle+MySQL)实战

2023-06-05 19:46 作者:戰億殇  | 我要投稿

行级锁

只在存储引擎层实现,而MySQL服务器层没有实现。

并发性好,但锁开销大

3 事务

3.1 数据库事务四特性

事务是指一组逻辑操作,它们要么一起成功,要么一起失败。

ACID:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)

原子性:事务是一个不可分割的最小单元,事务中的操作要么都发生,要么都不发生。

一致性:如果事务执行之前数据库是一个完整的状态,那么事务结束后(无论事务是否执行成功)数据库仍然是一个完整的状态。(DB中所有的数据都符合DB的约束规范)

隔离性:多个用户并发访问数据库时,一个用户的事务不能被其他用户的事务所干扰,多个并发事务之间数据要相互隔离。

持久性:事务一旦被提交,它对数据库的影响是永久性的

3.2 隔离级别

SQL标准定义了四种隔离级别:

隔离级别说明问题

读未提交(Read Uncommitted)事务A可读取事务B未提交的数据引发 脏读

读已提交(Read Committed)事务A只能读取其它已提交事务的数据;引发 不可重复读

可重复读(Repeatable Read)保证同一事务中多次读取同样的记录的结果是一致的;Mysql默认事务隔离级别解决了脏读;但引发 幻读

可串行化(Serializable)强制事务串行执行,在读的每一行数据行上加锁大量的超时和锁竞争

脏读:一个事务读取了另外一个未提交事务数据

 


风哥双OCP认证培训(Oracle+MySQL)实战的评论 (共 条)

分享到微博请遵守国家法律