我正在为一个800GB的大表添加一个索引到MySQL 5.7 Aurora中。我在它上面有一个索引,但当我在另一个varchar(255)列上应用一个索引时,它运行了10多个小时,没有错误消息,我重新登录检查表,它上面没有索引。
我已经在工作台查询中尝试过了。
ALTER TABLE `DataSets`.`companies`
ADD INDEX `website` (`website` ASC),
以及
CREATE INDEX website ON DataSets.companies(website);
他们只是跑,什么也没发生。
我该如何调试和解决这个问题?
1条答案
按热度按时间4ioopgfo1#
由于您有800GB的数据,MySQL尝试读取这些数据并使用B+树(key =
website
,value =PRIMARY KEY
的数组)构建二级索引,构建这样一个大型索引通常需要几小时到几天。