mySQL 转储不一致

mySQL dump inconsistency

我有一个结构只导出到两个数据库,并使用它们来比较我的开发和生产服务器的模式。

我的一个字段有索引。

当我导出两个 sql 文件时,在一个文件中索引定义如下:

 KEY `assoc_id` (`assoc_id`),

另一个像这样:

  KEY `assoc_id` (`assoc_id`) USING BTREE,

生产服务器是开发服务器的克隆,与 mysql.

的版本相同

导出是使用 Navicat (OS X) 完成的,但我不知道这是否相关,因为转储原生于 mysql...

这不是问题,因为在所有情况下都是 btree,但我只是想知道为什么有时添加 USING BTREE 有时不添加。

编辑: 刚看到同样的事情:ROW_FORMAT=DYNAMIC

几乎 MySQL 中的所有索引都是 BTree。 InnoDB 和 MyISAM 引擎的默认值是 BTree。 FULLTEXT 和 SPATIAL 索引也存在,但会被明确说明。 MEMORY Engine 和 NDB Cluster 还有其他异常,比如 HASH。

因此,USING BTREE是多余的和可选的。不用担心。

差异可能源于两种不同的出口产品或版本。