高性能Mysql笔记

一、Mysql架构与历史

1、架构图

Mysql架构图.png

2、锁

表锁
表锁是Mysql中最基本的锁策略,开销最小。
行级锁
行锁可以最大程度地支持并发处理。行级锁只在存储引擎层实现,而Mysql服务器没有实现。服务器层完全不了解存储引擎层的锁实现。

3、事务

 事务内的语句,要么全部执行成功,要么全部执行失败。一个运行  良好的事务系统,必须具备ACID特性。
 ACID分别表示原子性(atomicity)、一致性(consistency)、隔离性(isolation)、持久性(durability)。
隔离级别 脏读 不可重复读 幻读
未提交读(Read uncommitted) 可能 可能 可能
已提交读(Read committed) 不可能 可能 可能
可重复读(Repeatable read) 不可能 不可能 可能
可串行化(Serializable) 不可能 不可能 不可能
死锁
死锁是指两个或者多个事务在同一资源上相互占用,并请求锁定对方占用的资源,从而导致恶性循环的现象。
Mysql中的事务
Mysql默认采用自动提交(AUTOCOMMIT)模式。也就是说,如果不是显式地开始一个事务,则每个查询都被当作一个事务执行提交操作。show variables like 'AUTOCOMMIT'; 可以用来查看该开关。

1

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容