我是靠谱客的博主 心灵美灰狼,最近开发中收集的这篇文章主要介绍imp的buffer和commit分析,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Impcommitbuffer分析:

Impcommit影响:

impcommit主要用于大表数据插入时减少回滚段的压力,以免出现长时间导入而出现的回滚段过久ora-01555,结合buffer设置则能按照buffer的大小进行分批提交,可以有效的减轻undo压力。

但是如果对于插入loblongrefrowid等字段时设置commit=y则会逐条commit,我们都清楚对于批量插入数据逐条commit会降低性能,所以这里需要依据表中的具体信息。

而且还存在一个因素则是结合buffer区大小批量commit提交时,如果出现表空间,连接丢失等问题导致imp失败,则可能只提交一批数据,此时带来的影响还是很大的,即使再次插入根据主键筛选依然会出现大量的错误,而imp对这些错误的排查则会降低大量性能,这也可能是oracle默认的imp工具中commit=n缘由吧。

Impbuffer效果

生产环境下,oracle 9Isga大概8Gpga大概6g,需要导入一个2.7g以上的大表到成产库中,由于是同事着手运用imp工具的默认buffer=30K,用时大概一个小时还没有结果,考虑到pga还是很大的,跟同事商议加上buffer=409600000设置buffer大概400M的,15分钟内imp完成。当然运用impdp然后运用parallel=n效率当然更加理想了!

[@more@]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25362835/viewspace-1057420/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/25362835/viewspace-1057420/

最后

以上就是心灵美灰狼为你收集整理的imp的buffer和commit分析的全部内容,希望文章能够帮你解决imp的buffer和commit分析所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(55)

评论列表共有 0 条评论

立即
投稿
返回
顶部