4

我收到以下 MySQL 错误:

Too many keys specified; max 64 keys allowed.

是否可以增加 MySQL 中的最大索引大小,如果可以,那么我们该怎么做?

4

3 回答 3

1

鉴于此处的答复:mysql错误1069指定的键太多;最多允许 64 个键 ,这里http://forums.mysql.com/read.php?22,53666,53666(2005年的旧线程,但仍然相关),似乎重新编译和发布似乎是你唯一的选择。

如果您的主机不允许您手动部署 mySql 安装,这当然很困难。

于 2013-06-03T12:40:10.733 回答
1

选项1)增加MAX_KEY value in 'sql/unireg.h'并重新编译代码

或者

选项 2)您可以在配置阶段指定它,即:

./configure --prefix=/usr/local/mysql --with-charset=cp1251 --enable-thread-safe-client --with-max-indexes=256 

检查此链接

于 2013-06-03T12:43:01.733 回答
0

从文档中:“每个 MyISAM 表的最大索引数为 64。这可以通过重新编译来更改。从 MySQL 5.0.18 开始,您可以通过使用 --with-max-indexes=N 选项调用配置来配置构建,其中 N 是每个 MyISAM 表允许的最大索引数。N 必须小于或等于 128。在 MySQL 5.0.18 之前,您必须更改源。

因此,我们假设您使用的是 MyISAM。如果使用 InnoDB,只要数据长度在 3072 字节限制内,就可以获得任意数量的键。

为什么你有这么多钥匙?您可以重新设计以减少使用量吗?

于 2013-06-03T12:44:39.143 回答