在对MySQL进行测试时,我想要给一个拥有超过5000万行的表添加多个索引。 MySQL支持同时为不同列添加两个索引吗?如果可以,我需要打开两个会话还是可以通过一条命令完成?
在创建表格时添加时间字段很有用,可以通过以下方式完成:
CREATE TABLE name_of_a_new_table (col1 variable_type_1, col2 variable_type_2,
INDEX idx_col1 (col1), INDEX idx_col2 (col2));
https://dev.mysql.com/doc/refman/5.5/en/innodb-create-index.html
ALTER
中完成所有操作:ALTER TABLE tbl MODIFY ... ADD PRIMARY KEY (...), ADD INDEX ..., etc;
- Rick Jamescontent_id
已经有数据,你是否正在添加AUTO_INCREMENT
和PRIMARY KEY
? 它已经是BIGINT
类型了吗?(请向我们展示SHOW CREATE TABLE
) - Rick Jamestable1
(content_id
bigint(20) unsigned NOT NULL ,pid
int(11) unsigned NOT NULL,status
int(11) unsigned NOT NULL DEFAULT '0',datecreated
datetime DEFAULT NULL,datemodified
datetime DEFAULT NULL, ) ENGINE=InnoDB DEFAULT CHARSET=utf8; - mugurelfMAX(content_id)
是什么?根据迄今为止的建议,您的初步ALTER
是什么? - Rick James