zoukankan      html  css  js  c++  java
  • MYI 文件内容

    参考 http://blog.itpub.net/703656/viewspace-1018470/

    创建表结构

    create table test(name char(20), age int, class int);

    create index idx_name on test(name);

    create index idx_age_class on test(age, class);

    insert into test values('张三', 15, 1);

    insert into test values('李四', 20, 2);

    insert into test values('王五', 30, 3);

    .MYI文件包括两部分

    一 头信息

    二 KEY信息

    头信息包括

     header_lenght 头长度

     keys 索引个数

     records  没有被delete的记录个数

     del 被删除记录个数

     dellink 下一个黑洞

     key_file_length .MYI文件大小

     data_file_length .MYD文件大小

     key_root 这是个数组,值为索引本身所在的block在文件中的offset,每一个block时会放许多的key

    key信息

    =============针对索引idx_name==============

     keydef->keysegs   1 单独索引

     keydef->block_length 1024

     keydef->key_length  sizeof(name)+sizeof(rowid)

     keyseg->type 文本

     keyset->start  索引idx_name在insert记录中的offset 

    ===========针对联合索引idx_age_class===========

     keydef->keysegs 2 联合索引(age, class)

     keydef->block_length 1024字节

     keydef->key_length sizeof(age)+sizeof(class)+sizeof(rowid)

    //针对age

     keyseg->type 数字

     keyseg->start   age字段在insert记录中的offset

    //针对class

    keyseg->type 数字

    keyseg->start  class字段在insert记录中的offset

    对于idx_age_class所在的block

    第一个关键字 value 15,1

    第二个关键字 value 20,2

    第三个关键字 value 30,3

     

    第一个关键字 pointer  001 行指针

    第二个关键字 pointer  003 行指针

    第三个关键字 pointer  005 行指针

     

  • 相关阅读:
    Scripts.Render 索引超出了数组界限
    AutoFac使用方法总结
    MFC中打开一个获取路径的对话框
    MFC中自定义消息
    获得窗口句柄的方法
    App Doc View Frame中指针的获取
    MFC中菜单的命令响应顺序
    机械设计软件编写心得
    对SVD奇异值分解的理解
    安装win8+Ubuntu14.04双系统的经验总结
  • 原文地址:https://www.cnblogs.com/taek/p/4711297.html
Copyright © 2011-2022 走看看