Запустить oracle dequeue при запуске - PullRequest
8 голосов
/ 30 марта 2010

Я получил следующую ошибку Oracle,

ORA-25226: dequeue failed, queue string.string is not enabled for dequeue

А вот причины и действия для этого из официального документа:

Cause: The queue has not been enabled for dequeue.
Action: Enable the queue using START_QUEUE.

Но эта ошибка возникает каждый раз при перезапуске базы данных, есть ли какая-либо конфигурация для установки очереди при запуске базы данных?

спасибо!

Ответы [ 2 ]

11 голосов
/ 30 марта 2010

Каков статус очереди в dba_queues

select owner,name,enqueue_enabled,dequeue_enabled from dba_queues;

Если очередь отключена, запустите ее с

begin
 dbms_aqadm.start_queue(queue_name => '<OWNER.QUEUE_NAME>');
end; /

Полагаю, это должно сохраняться и после перезагрузки, хотя я не проверял.

0 голосов
/ 05 апреля 2018

В моем случае это было вызвано отсутствием

DECLARE 
   subscriber          sys.aq$_agent; 
BEGIN 
   subscriber := sys.aq$_agent('subscriber1', '<OWNER.QUEUE_NAME>', null); 
   DBMS_AQADM.ADD_SUBSCRIBER(
      queue_name         => '<OWNER.QUEUE_NAME>', 
      subscriber         =>  subscriber); 
END;

Это весь шаблон , и это позволяет мне фактически получать сообщения.

...