猜测多麻烦啊。直接看看具体的等待事件不就知道为什么了。SELECT W.EVENT, S.STATUS, Q.SQL_TEXT FROM V$SESSION_WAIT W, V$SESSION S, V$SQL Q WHERE W.SID = S.SID AND Q.HASH_VALUE = S.SQL_HASH_VALUE AND W.EVENT NOT LIKE '%message from client%' AND S.SID =&yoursid ;
/--写个存贮过程: /--1.先删除符合条件的记录,再插入; /--2.再写个存贮过程,主要是重建索引,加入如下语句: spool c:\rebuild_index.sql select 'alter index '|| index_name|| ' rebuild' from dba_indexes; spool off @ c:\rebuild_index.sql;
/--如果可以的话,可以做个JOB,定时执行这个存贮过程。
改一下: /--写个存贮过程: /--1.先删除符合条件的记录,再插入; /--2.重建索引,加入如下语句(存贮过程中直接执行index rebuild可能有误): spool c:\rebuild_index.sql select 'alter index '|| index_name|| ' rebuild' from dba_indexes; spool off @ c:\rebuild_index.sql;
在晚上清除一上.sql> alter table you_table_name move;
数据库是在归档还是非归档?
insert时是insert /*+ append */的吗?>我把应用停了之后,重新开,时间又比较短了
想当于把一个session关掉,重连一个session,然后就快了。难道是 sga,pga等分配不够?
FROM V$SESSION_WAIT W, V$SESSION S, V$SQL Q
WHERE W.SID = S.SID
AND Q.HASH_VALUE = S.SQL_HASH_VALUE
AND W.EVENT NOT LIKE '%message from client%'
AND S.SID =&yoursid ;
/--写个存贮过程:
/--1.先删除符合条件的记录,再插入;
/--2.再写个存贮过程,主要是重建索引,加入如下语句:
spool c:\rebuild_index.sql
select 'alter index '|| index_name|| ' rebuild' from dba_indexes;
spool off
@ c:\rebuild_index.sql;
/--如果可以的话,可以做个JOB,定时执行这个存贮过程。
/--写个存贮过程:
/--1.先删除符合条件的记录,再插入;
/--2.重建索引,加入如下语句(存贮过程中直接执行index rebuild可能有误):
spool c:\rebuild_index.sql
select 'alter index '|| index_name|| ' rebuild' from dba_indexes;
spool off
@ c:\rebuild_index.sql;
/--如果可以的话,可以做个JOB,定时执行这个存贮过程。