执行impdp速度非常慢 您所在的位置:网站首页 impdp导入dmp文件卡住 执行impdp速度非常慢

执行impdp速度非常慢

2023-07-17 08:16| 来源: 网络整理| 查看: 265

场景描述:

1、执行impdp命令速度很慢(导完4G的dmp文件需要一个半小时),通过impdp.log发现导入一个数据量很小的表也需要很长时间

问题分析:

1、检查alert日志,提示“Thread 1 connot allocate new log,sequence xxx;Checkpoint not complete”(起初没有在意),无其它报错信息;

2、检查系统磁盘空间及内存、CPU利用率,资源充足;

3、检查Oracle的sga、pga,发现较小,进行调整

      alter system set sga_max_size=20480M scope=spfile;

      alter system set sga_target=20480M scope=spfile;

      shutdown immediate;

      startup;

      alter system set workarea_size_policy=auto scope=both;

      alter system set pga_aggregate_target=10240M scope=both; 

4、重新执行impdp,发现速度有所改善,不过还是很慢(导完4G的dmp文件需要一个小时);

5、重新检查alert日志,发现“Thread 1 connot allocate new log,sequence xxx;Checkpoint not complete”提示得很频繁,且该提示下面显示对应的redo日志文件。于是怀疑是redo日志文件太小,导致redo日志频繁切换,占用了大量的资源;

6、调整redo日志文件大小及日志组

      --查看日志文件组及日志文件大小

      select t.BYTES/1024/1024,t.* from v$log t;

      select t.* from v$logfile t;

      --创建日志组

      alter database add logfile group 4 '/oradata/system/redo04.log' size 500M;

      --删除日志组(只有INACTIVE的日志才允许删除)(日志删除后,物理文件还在,需手动删除)

      alter database drop logfile group 1;

      --切换日志

      alter system switch logfile;

      --创建检查点(将redo日志写文件)

      alter system checkpoint;

7、重新执行impdp,导完4G的dmp文件在10分钟以内,日志组切换频率较低

结论:

1、数据库的问题应该优先查看数据库本身的日志;

2、redo日志切换频率应该控制在合理范围内,不能过于频繁;  



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有