Jetman Blog

少壮不努力,老大写代码

mysql隔离性

"mysql隔离性"

事务隔离级别 ACID(Atomicity、Consistency、Isolation、Durability,即原子性、一致性、隔离性、持久性) 隔离性 读未提交 两个事务,第一个事务读到另外一个事务未提交的修改。 读已提交 两个事务,第一个事务需要等到第二个事务提交后才能查询到修改。 可重复读 ...

mysql锁

"innodb锁"

数据库锁 全局锁 FTWRL前有读写的话 ,FTWRL都会等待 读写执行完毕后才执行 FTWRL 执行的时候要刷脏页的数据到磁盘,因为要保持数据的一致性 ,理解的执行FTWRL时候是所有事务都提交完毕的时候. mysqldump + -single-transaction 也是保证事务的一致性,但他只针对 有支持事务引擎,比如innodb 所以还是强烈建议大家在创建实例,表时候需要...

mysql总体设计图

"mysql设计图"

前言 最近学习丁奇老师的mysql45讲有感,所以写下一些总结方便自己以后回顾. 关系型数据库是我们后端开发时常接触的和使用的中间件工具,但是除了sql语法外我们还需要关注其他原理,例如索引,锁,分布式同步等,下面以mysql为例子给出mysql的设计流程图 1. mysql执行流程图 客户端:jdbc,mysql -u -p,等等 服务端:连接器,查询缓存(...

mysql日志

"innodb日志"

mysql日志 redo log是物理的,binlog是逻辑的; 现在由于redo是属于InnoDB引擎,所以必须要有binlog,因为你可以使用别的引擎保证数据库的一致性,必须要保证2份日志一致,使用的2阶段式提交,其实感觉像事务,不是成功就是失败,不能让中间环节出现。 redolog:循环写,写到文件尾部又从头开始写,有两个指针write pos是当前写入的位置,chec...

mysql索引

"innodb索引"

索引 索引常见模型:bTree,hash,有序数组 a. hash:数据结构参考jdk hashMap. 优点:单个查找非常快. 缺点:不支持区间查找,区间查找需要全表扫描. b. 有序数组 优点:单个查找和区间查找非常快 缺点:插入数组需要移动后面的数组,效率非常差. c. bTree:数据结构是N叉索引树 以InnoDB的一个整数字段索引为例,这个N差...