我有一个数据复制过程,它在目标数据库中删除并重新创建几个表,然后从源数据库(运行在另一个主机上,但这对手头的问题无关紧要)加载它们。
目标数据库确实需要其表上的主键和其他几个索引,但在数据加载期间不需要。我目前正在加载所有数据,然后创建索引。但是,创建索引需要相当长的时间
我的直觉告诉我,在末尾创建索引应该比首先创建索引更快,因为索引需要用每个insert来重写。
有人能确定哪条路更快吗?FWIW,我正在运行MySQL 5.1和InnoDB表。
发布于 2011-02-16 16:41:22
你的直觉是正确的。表是有序的吗?http://kevin.vanzonneveld.net/techblog/article/improve_mysql_插入_业绩/为优化批量插入提供了一些建议。
https://serverfault.com/questions/236303
复制相似问题