InnoDB search原理解析
mydumper工作原理解析
1、简介逻辑备份小钢炮--mydumper是针对MySQL的高性能多线程备份工具。该工具是由MySQL、Facebook、skysql公司的开发人员一起开发的。是由轻量级C语言开发;执行速度据说比mysqldump快10倍;支持事务和非事务表的一致性备份;还支持导出binlog;支持多线程备份;支持以守护进程的形式工作,定时备份;并且是开源的,...
MySQL半一致性读原理解析-从源码角度解析
InnoDB MVCC实现原理及源码解析
2、InnoDB数据行结构行结构中,除了用户定义的列外还有3个系统列:DATA_ROW_ID、DATA_TRX_ID、DATA_ROLL_PTR,如果表没有定义主键那么DATA_ROW_ID作为主键列,否则行结构中没有DATA_ROW_ID列。其中: DATA_TRX_ID:修改该行数据的事务的ID DATA_ROLL_PTR:指向该行回滚...
InnoDB数据字典--字典表加载
在InnoDB启动时,如果是新建数据库则需初始化库,需要创建字典管理的相关信息。函数innobase_start_or_create_for_mysql调用dict_create完成此功能。即创建数据字典,因为InnoDB系统表的个数结构固定,所以初始化库的时候只需要创建这几个表的B+树即可并将B+树的根页号存放到固定位置。对于B+树,只要找到根页面,就可以...
InnoDB数据字典详解-系统表
InnoDB中,实际上看不到系统表。有4个最基本的系统表来存储表的元数据:表、列、索引、索引列等信息。这4个表分别是SYS_TABLES、SYS_COLUMNS、SYS_INDEXES、SYS_FIELDS。下面分别介绍存储所有以InnoDB为存储引擎的表,每条记录对应一个表。该表的列分别是: ID:表的ID号 ...
innoDB ROWID管理
1、原理流程图2、讲解 并不是每次插入操作都将rowid的值写入到字典页面中,插入操作相对于建表等操作频繁多了,所以如果每次都写入字典页面中的话,将会影响效率。innoDB做了一个优化,每分配一个rowid,只在内存中+1,只有当这个值是256的倍数时才写入一次。重启时,从字典页面读取rowid值,并对其256对...
MySQL连接原理解析
InnoDB update操作流程图
InnoDB事务锁之行锁-隐式锁转换显示锁举例理解原理
InnoDB事务锁之行锁-判断是否有隐式锁原理图
InnoDB事务锁之行锁-insert加锁-隐式锁加锁原理
InnoDB事务锁之行锁-insert二级索引加锁原理图
InnoDB事务锁之行锁-insert加锁原理图-聚集索引
InnoDB事务锁之行锁-delete流程update阶段加锁
1、介绍
InnoDB事务锁之行锁-聚集索引加锁流程
InnoDB锁结构个数最大限制
innobase_start_or_create_for_mysql->lock_sys_create(srv_lock_table_size)-> lock_sys->rec_hash = hash_create(srv_lock_table_size); srv_normalize_init_values-> srv_lock_table_size = 5 * (srv_buf_pool_size / UNIV_PAGE_SIZE);
InnoDB事务锁之行锁相关结构
MySQL5.6复制原理图
MySQL半同步复制--after_commit
在分析代码前,先介绍binlog中几个位置关系。MYSQL_BIN_LOG::ordered_commit->finish_commit: ha_commit_low ...