Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何检查Oracle 11上的索引生成状态?_Oracle_Plsql_Oracle11g_Indexing_Plsqldeveloper - Fatal编程技术网

如何检查Oracle 11上的索引生成状态?

如何检查Oracle 11上的索引生成状态?,oracle,plsql,oracle11g,indexing,plsqldeveloper,Oracle,Plsql,Oracle11g,Indexing,Plsqldeveloper,我在创建SQL索引时犯了一个可怕的错误: create index IDX_DATA_TABLE_CUSECO on DATA_TABLE (CUSTOMER_ID, SESSION_ID, CONTACT_ID) tablespace IDX_TABLESPACE LOCAL ; 正如您所看到的,我遗漏了关键字“ONLINE”,以创建索引,而不阻塞使用率高、记录数超过600万条的生产表。更正的SQL是: create index IDX_DATA_TABLE_CUSECO on DATA

我在创建SQL索引时犯了一个可怕的错误:

create index IDX_DATA_TABLE_CUSECO on DATA_TABLE (CUSTOMER_ID, SESSION_ID, CONTACT_ID)
  tablespace IDX_TABLESPACE LOCAL ;
正如您所看到的,我遗漏了关键字“ONLINE”,以创建索引,而不阻塞使用率高、记录数超过600万条的生产表。更正的SQL是:

create index IDX_DATA_TABLE_CUSECO on DATA_TABLE (CUSTOMER_ID, SESSION_ID, CONTACT_ID)
  tablespace IDX_TABLESPACE LOCAL ONLINE;
我是在PL/sqldeveloper下完成的。当我试图停止它时,程序停止响应并崩溃

生产系统已经9个小时不工作了,我的老板想要爆炸D

是否有机会看到Oracle 11g还剩下多少秒/分钟/小时来处理此索引创建?或者也许有机会看到Oracle是否仍在处理此请求?(PL/SQL开发人员崩溃了)

对于仇恨者: 我知道我应该像这里提到的那样做:()



您应该能够在
V$SESSION\u LONGOPS

SELECT sid, 
       serial#, 
       target, 
       target_desc, 
       sofar, 
       totalwork, 
       start_time, 
       time_remaining, 
       elapsed_seconds
  FROM v$session_longops
 WHERE time_remaining > 0

当然,在生产系统中,我可能会在几个小时前终止会话,而不是让DDL操作继续阻止用户访问应用程序。

您的链接似乎无效。我希望无论你在看什么文章,在告诉你创建一个不可用的索引之前,至少要讨论一下
跳过不可用的索引
设置,并告诉你一旦建立索引,就要更改索引的并行度设置。这篇文章没有,但是评论有,并解释为什么这些建议没有你想象的那么有用。不过我和Justin在一起,为什么你没有杀死运行索引构建的会话?我看不到我的会话,因为当PL/SQL开发人员崩溃连接和会话退出时,但当我尝试计算统计数据时,我收到一个错误:
错误报告:ORA-20000:这个索引对象“PRODSCHM”。“IDX_DATA_TABLE_CUSECO”正在在线构建或重建
@WBAR-我不确定我是否理解你的意思。客户机应用程序(PL/SQL Developer)崩溃与数据库会话是否仍在运行无关。您是否在v$session中看到该会话?@WBAR-如果该会话不存在(并且假设这不是RAC系统,在这种情况下,您需要使用
gv$session
gv$session\u longops
),则它不可能持有锁。
SELECT sid, 
       serial#, 
       target, 
       target_desc, 
       sofar, 
       totalwork, 
       start_time, 
       time_remaining, 
       elapsed_seconds
  FROM v$session_longops
 WHERE time_remaining > 0