oracle导出数据特别慢_expdp导出速度变慢原因的分析

首先比较了两个环境的数据库,发现生产和测试的几个参数略有不同。生产环境因为应用的特殊性,优化模式是RULE,而测试环境为默认的ALL_ROWS。另外db_file_multiblock_read_count这个参数生产环境是16,而测试环境为64。

更改了这几个参数的设定,使测试环境跟生产一致。然后重新导出。跟踪了一下进程,做了个trace,过程如下:

查找当前正在运行的SID:select

sid,username,program,status from V$session where status='ACTIVE'

and

username<>'SYS';(sid=424)

查找该session对应的SPID:select *

from V$process where addr=(select paddr from V$session where

sid=424);(spid=26087)

设定需要跟踪的进程号:oradebug setospid 26087

设定事件的跟踪级别:oradebug event 10046 trace name context forever,level

12;

查看trace文件的名称:oradebug tracefile_name

查看trace文件中直接路径读的延时信息:cat c2_dw01_29428.trc|grep direc|more

结果是这样的:

WAIT #49: nam='direct path read' ela= 28 file number=6 first


版权声明:本文为weixin_42525672原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。