Oracle的一段语句在并行模式下为什么正常执行的很慢?

存储过程里有一段insert语句,插入数据量就几条、几十条,之前执行时都是几秒、十几秒的时间,从前几天开始就都变成4分钟左右的样子,请大家分析一下是什么原因导致的。
这段语句拿出来执行也还是几秒钟,不会像4分钟那么长。
语句如下:

EXECUTE IMMEDIATE 'ALTER SESSION FORCE PARALLEL DML PARALLEL 8';

V_SQL := 
'INSERT/*+parallel(4)*/ INTO TAB_1(
  ...
  )
  SELECT /*+parallel(4)*/
  ...
  FROM TAB_2';

EXECUTE IMMEDIATE V_SQL;  --这一步执行变成了4分钟
COMMIT;

1、大多数情况下很正常,偶尔很慢,则有如下原因

  (1)、数据库在刷新脏页,例如 redo log 写满了需要同步到磁盘。

  (2)、执行的时候,遇到锁,如表锁、行锁。

2、这条 SQL 语句一直执行的很慢,则有如下原因。

  (1)、没有用上索引:例如该字段没有索引;由于对字段进行运算、函数操作导致无法用索引。

  (2)、数据库选错了索引。

服务器CPU满了吧

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632