我正在尝试将 FULLTEXT 索引到我的表中。那张表有 300 万条记录。使用 Alter table 语句或 Create index 语句插入该索引非常困难。因此,创建新表和第一个添加索引并加载数据的最简单方法。如何将现有表数据加载到新创建的表中?我正在使用 Xammp MySql 数据库。
最佳答案
我不知道为什么在现有表上创建全文索引会很困难。你只需要做:
create fulltext index idx_table_col on table(col)
通常,将索引添加到已加载的表中比将数据加载到具有预定义索引的空表中更快。
编辑:
您可以使用insert
进行加载。以下将插入前 100,000 行:
insert into newtable
select *
from oldtable
order by id
limit 0, 100000;
您可以将其置于循环中(通过 MySQL 中的存储过程或在应用程序级别)。或许这会回归得更快。每次运行它时,您都会更改 limit
中的偏移值。
我预计创建索引的总时间会比使用 insert
少,但出于您的目的,您可能会发现这更方便。
关于mysql - 如何将庞大的数据集加载到新创建的表中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27216065/