首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从MySQL数据库导出索引表

从MySQL数据库导出索引表
EN

Stack Overflow用户
提问于 2019-05-27 14:58:50
回答 1查看 114关注 0票数 1

我最近正在研究更好的索引概念。作为其中的一部分,我想知道是否可以导出mysql内部生成的索引表。我希望能够以CSV的形式导出索引表。

我知道如何使用以下命令在数据库中创建索引:

代码语言:javascript
复制
Example : CREATE INDEX index_name ON table_name (column_list)

创建索引后,我可以使用以下命令查看它:

代码语言:javascript
复制
SHOW INDEX FROM table_name;

在phpmyadmin中,我可以在structure部分看到索引表。

我使用的是InnoDB引擎,对于InnoDB引擎,索引与表一起存储在表空间中。如果设置了innodb_file_per_table选项,则索引将位于表的.ibd文件中。

那么,是否可以从.ibd文件中以csv格式导出索引表数据呢?

我想以CSV格式导出mysql内部生成的索引表。

EN

回答 1

Stack Overflow用户

发布于 2019-05-29 01:06:08

如果你有

代码语言:javascript
复制
PRIMARY KEY (id),
INDEX(a,b)

然后

代码语言:javascript
复制
SELECT a, b, id INTO outfile ... FROM ... ORDER BY a,b,id

将为您提供索引的内容。但是,它不会向您显示作为INDEX开销的B+Tree的任何细节。

InnoDB表的PRIMARY KEY是所有列都按PK顺序排列的B+Tree。

“辅键”(无论是否唯一)是一个B+Tree,它包含辅助索引的所有列,以及PK中的任何其他列。它也是排序的。

前缀索引(例如,INDEX(foo(7)))是另一回事。

FULLTEXTSPATIAL有自己的内部结构,而不是简单的B+Tree。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56321121

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档