这篇Tip来自于Jonathan Lewis的站点。
原文链接如下:
http://www.jlcomp.demon.co.uk/faq/imp_slow.html
为什么IMP速度慢?
1。IMP作了大量的跟普通方式一样的insert
2。IMP时候创建索引通常是logging的,产生了大量的undo和redo
如何提高IMP的速度
1。不建议使用commit参数,因为当imp失败的时候,会导致很多后续的麻烦事儿
2。增大buffer参数值,以便于一次读进更大的array
3。设置较大的初始化参数sort_area_size,以加快创建索引时候的排序速度
4。增大重作日志的大小,以减少log switch的次数,也就是减少checkpoint次数,减少写磁盘的次数
5。如果要往已经存在的表中追加数据,那么有些情况下,比如表中存在位图索引,那么最好先删除索引,再导入。否则更新索引时会产生大量等待。
6。使用indexfile和indexes参数,再导入数据之后再手工创建索引。