【问题标题】:Is clustered indexes implemented in mysql?mysql中是否实现了聚集索引?
【发布时间】:2011-09-26 20:18:41
【问题描述】:

为什么这段代码不起作用?是不是因为 MySQL 没有实现聚簇索引?

CREATE INDEX niels1 ON `table` CLUSTER (attr1,attr2);

【问题讨论】:

    标签: mysql sql clustered-index


    【解决方案1】:

    据我所知,只有 InnoDB 引擎提供聚集索引。 此外,没有专门的“CLUSTER”关键字;所有 PRIMARY KEY 索引都是集群的。 见http://dev.mysql.com/doc/refman/5.5/en/innodb-index-types.html

    【讨论】:

    • 谢谢。我知道它在主键上集群,但我想知道是否可以定义其他属性来创建集群。
    【解决方案2】:

    因为这不是 MySQL 的有效语法。见亚历克斯的回答。 InnoDB 集群主键,其他引擎各司其职。

    【讨论】:

    • 但老实说,“table”关键字是假的,而不是“CLUSTER”这个词,它应该是表的名称。
    • 是的,我现在修好了。我只是插入了表格而不是表格名称,很抱歉造成混乱。
    【解决方案3】:

    到目前为止,所有 MySQL 的存储引擎都不允许您选择在哪个索引上进行集群。 01/2013。

    http://dev.mysql.com/doc/refman/5.5/en/innodb-index-types.html

    【讨论】:

      【解决方案4】:

      您似乎没有尝试在名为“CLUSTER”的表上创建聚集索引。也许您需要执行以下操作:

      CREATE INDEX niels1 ON CLUSTER (attr1,attr2) USING BTREE;
      

      【讨论】:

        猜你喜欢
        • 2017-05-08
        • 2018-05-22
        • 2019-05-20
        • 2020-11-28
        • 1970-01-01
        • 2016-01-03
        • 1970-01-01
        • 2010-11-18
        相关资源
        最近更新 更多