- 博客(10)
- 论坛 (3)
- 问答 (1)
- 收藏
- 关注
原创 mydumper工作原理解析
1、简介逻辑备份小钢炮--mydumper是针对MySQL的高性能多线程备份工具。该工具是由MySQL、Facebook、skysql公司的开发人员一起开发的。是由轻量级C语言开发;执行速度据说比mysqldump快10倍;支持事务和非事务表的一致性备份;还支持导出binlog;支持多线程备份;支持以守护进程的形式工作,定时备份;并且是开源的,其协议为GPLv3.2、使用方法root@dd:~/m...
2018-04-28 21:59:14
632
原创 MySQL半一致性读原理解析-从源码角度解析
1、什么是半一致性读A type of read operation used for UPDATE statements, that is a combination of read committed and consistent read. When an UPDATE statement examines a row that is already locked, InnoDB retur...
2018-04-20 22:23:29
946
原创 InnoDB MVCC实现原理及源码解析
1、原理介绍数据多版本(MVCC)是MySQL实现高性能的一个主要的一个主要方式,通过对普通的SELECT不加锁,直接利用MVCC读取指版本的值,避免了对数据重复加锁的过程。InnoDB支持MVCC多版本,其中RC和RR隔离级别是利用consistent read view方式支持的,即在某个时刻对事物系统打快照记下所有活跃读写事务ID,之后读操作根据事务ID与快照中的事务ID进行比较,判断可见性...
2018-04-15 15:44:38
2163
1
原创 InnoDB redo log格式-物理log
在页面上修改N个字节,可以看做物理log。包括以下几种类型:MLOG_WRITE_STRING、MLOG_8BYTES、MLOG_2BYTES、MLOG_1BYTES、MLOG_4BYTES。各种页链表指针修改以及文件头、段页内容的修改都是以这几种方式记录日志。具体格式如下:1、MLOG_2BYTES、MLOG_1BYTES、MLOG_4BYTES:2、MLOG_8BYTES3、MLOG_WRIT...
2018-04-07 12:57:25
752
原创 InnoDB数据字典--字典表加载
1、介绍在InnoDB启动时,如果是新建数据库则需初始化库,需要创建字典管理的相关信息。函数innobase_start_or_create_for_mysql调用dict_create完成此功能。即创建数据字典,因为InnoDB系统表的个数结构固定,所以初始化库的时候只需要创建这几个表的B+树即可并将B+树的根页号存放到固定位置。对于B+树,只要找到根页面,就可以从根页面开始检索数据。相关系统表...
2018-04-06 11:16:27
581
1
原创 InnoDB数据字典详解-系统表
1、简介InnoDB中,实际上看不到系统表。有4个最基本的系统表来存储表的元数据:表、列、索引、索引列等信息。这4个表分别是SYS_TABLES、SYS_COLUMNS、SYS_INDEXES、SYS_FIELDS。下面分别介绍2、SYS_TABLES存储所有以InnoDB为存储引擎的表,每条记录对应一个表。该表的列分别是: NAME:表名 ID:表的ID号 N_COLS:表的列...
2018-04-05 21:39:39
852
原创 InnoDB rowid管理
1、流程原理图2、讲解在innodb表中,并不是每个行记录都存有row ID,只有表定义没有主键时,才会使用rowid并作为主键。rowid的分配是全局的,所有的表都共享这个ID,即从在dict_sys->mutex锁内获取dict_sys->row_id中的值。并不是每次插入操作都将rowid的值写入到字典页面中,插入操作相对于建表等操作频繁多了,所以如果每次都写入字典页面中的话,将...
2018-04-01 13:41:56
476
空空如也
yzs87的留言板
发表于 2020-01-02 最后回复 2020-01-02
写博客能不能添加个撤销键
发表于 2018-01-04 最后回复 2018-01-06
innodb插入意向锁如何使用
发表于 2015-06-07 最后回复 2015-06-07
innodb插入意向锁如何使用
2015-06-07
TA创建的收藏夹 TA关注的收藏夹
TA关注的人 TA的粉丝