Database Administration (MOSC)

MOSC Banner

How To Manually Recreate queue table alter_qt

edited Jan 1, 2019 8:08AM in Database Administration (MOSC) 6 commentsAnswered
环境oracle 10.2.0.4  两节点rac,由于sysaux损坏,现在需要重建 queue table alter_qt

但是我用下边的语句创建时报错,过程如下:

SQL> begin
  2    sys.dbms_aqadm.create_queue_table(
  3      queue_table => 'ALERT_QT',
  4      queue_payload_type => 'SYS.ALERT_TYPE',
  5      sort_list => 'ENQ_TIME',
  6      multiple_consumers => true,
  7      compatible => '10.0.0',
  8      primary_instance => 0,
  9      secondary_instance => 0,
 10      comment => 'Server Generated Alert Queue Table');
 11  end;
 12  /
begin
*
ERROR at line 1:
ORA-24001: cannot create QUEUE_TABLE, SYS.ALERT_QT already exists
ORA-06512: at "SYS.DBMS_AQADM_SYS", line 2830
ORA-06512: at "SYS.DBMS_AQADM", line 58
ORA-06512: at line 2

提示ALERT_QT已经存在,于是我先删除,如下:

SQL> begin
  2    sys.dbms_aqadm.drop_queue_table(
  3      queue_table => 'ALERT_QT',
  4      force => true);
  5  end;
  6  /
begin
*
ERROR at line 1:
ORA-24002: QUEUE_TABLE SYS.ALERT_QT does not exist

Howdy, Stranger!

Log In

To view full details, sign in to My Oracle Support Community.

Register

Don't have a My Oracle Support Community account? Click here to get started.

Category Leaderboard

Top contributors this month

New to My Oracle Support Community? Visit our Welcome Center

MOSC Help Center