yanzongshuai的专栏

专注于MySQL、Aerospike等数据库

  • 博客访问: 13243
  • 博文数量: 25
  • 用 户 组: 普通用户
  • 注册时间: 2017-10-03 15:14
  • 认证徽章:
个人简介

专注于MySQL及Aerospike等关系型、非关系型数据库研究。欢迎交流!

文章分类
文章存档

2018年(16)

2017年(9)

发布时间:2018-01-20 20:08:18

......【阅读全文】

阅读(1824) | 评论(0) | 转发(0)

发布时间:2018-04-15 15:52:03

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:指向该行回滚.........【阅读全文】

阅读(7) | 评论(0) | 转发(0)

发布时间:2018-04-06 11:22:09

在InnoDB启动时,如果是新建数据库则需初始化库,需要创建字典管理的相关信息。函数innobase_start_or_create_for_mysql调用dict_create完成此功能。即创建数据字典,因为InnoDB系统表的个数结构固定,所以初始化库的时候只需要创建这几个表的B+树即可并将B+树的根页号存放到固定位置。对于B+树,只要找到根页面,就可以.........【阅读全文】

阅读(10) | 评论(0) | 转发(0)

发布时间:2018-04-05 21:47:15

InnoDB中,实际上看不到系统表。有4个最基本的系统表来存储表的元数据:表、列、索引、索引列等信息。这4个表分别是SYS_TABLES、SYS_COLUMNS、SYS_INDEXES、SYS_FIELDS。下面分别介绍存储所有以InnoDB为存储引擎的表,每条记录对应一个表。该表的列分别是:    ID:表的ID号  .........【阅读全文】

阅读(13) | 评论(0) | 转发(0)

发布时间:2018-04-01 13:47:35

1、原理流程图2、讲解    并不是每次插入操作都将rowid的值写入到字典页面中,插入操作相对于建表等操作频繁多了,所以如果每次都写入字典页面中的话,将会影响效率。innoDB做了一个优化,每分配一个rowid,只在内存中+1,只有当这个值是256的倍数时才写入一次。重启时,从字典页面读取rowid值,并对其256对.........【阅读全文】

阅读(14) | 评论(0) | 转发(0)
给主人留下些什么吧!~~
留言热议
请登录后留言。

登录 注册