每当我尝试索引Oracle中的大表时,我都会看到大量的ORA-01013超时。许多超时大约在两秒钟内出现。 每次索引运行时都会发生这种情况。
对于与被索引的表无关的随机事务/查询发生超时。对于某些背景,这是一个24/7交易系统,所有“随机”交易都是来自(哪里。
此外,正在加载和编制索引时,正在编制索引的表不会以任何方式被主动使用或访问(我们有两个表,这些表在加载和索引完成后通过同义词交换)。
似乎数据库遇到了导致其他进程超时的资源瓶颈,但这只是猜测。
更具体地说,我已经看到在下面相同表的两个不同索引中弹出超时。重申一下,超时是与此表完全无关的查询。
非常感谢任何帮助!
DB: Oracle 11g
Load and index operations are executed using sqlplus.
JBoss6/hibernate is where the timing-out-queries originate from.
create index INFO_TB_IX2 on INFO_TB (RISK_ID);
create index INFO_TB_IX4 on INFO_TB (ACCOUNT_NBR);
Name: INFO_TB
Average records loaded: Just under 300 million
PK: (ACCOUNT_ID,PORTFOLIO)
Name Null? Type
----------------------------------------- -------- ---------------------------
RISK_ID NUMBER
ACCOUNT_ID NOT NULL NUMBER
ACCOUNT_NBR NOT NULL NUMBER
PORTFOLIO NOT NULL VARCHAR2(5)
PORTFOLIO_ID NOT NULL NUMBER