大规模表副本中的Oracle性能下降

时间:2015-12-09 02:17:26

标签: oracle database-administration

情况: 我使用Oracle 11g R2处理两个数据库用户。

用户U0 =具有数百个表的原始数据库
用户U1 =用于模拟U0

的U0的副本

为了维护U1,我在模拟开始时在U1上运行如下脚本。

    truncate table T1;  
    truncate table T2;  
    ...  
    insert into T1 (select * from U0.T1)  
    insert into T2 (select * from U0.T2)  
    ...

问题:几天没有问题,但几周后变慢了 它有时也会停止在表中插入记录,在这种情况下它总是停在同一个表中。但是,我不认为表格大小是问题,因为它只有不到20,000条记录。

我想这是由于DBMS端,磁盘或内存中的资源问题,但不知道如何解决它。我可以找到类似的问题如下,没有确切的程序来解决存储问题。也许这对DBA来说可能很简单,但不幸的是我没有资格。

Oracle performance issue with massive inserts and truncates (AWR attached)

编辑:根据Jon Heller的评论,我得到的查询结果如下。

  1. dba_resumable:没有记录。
  2. gv $ sql:查询了5~6条记录,但不包括插入语句 最值得注意的是"从V $ SYSTEM_EVENT中选择TIME_WAITED_MICRO,其中event =' Shared IO Pool Memory'"。我想这是由于内存不足。
  3. report_sql_monitor:每个sql_id返回" SQL监控报告"没有其他信息。
  4. Edit2:请忘记上面的编辑。插入语句出现在gv $ sql查询中,SQL监视器结果如附图所示。 SQL Monitoring Report

    Edit3:这次SQL监视器返回了相同insert语句的Activity详细信息。 SQL Monitoring Report 2

0 个答案:

没有答案