起動時にOracle Dequeueを開始します
質問
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.
しかし、このエラーは、データベースを再起動するたびに発生しますが、データベースの起動時にDequeueを起動するために設定する構成はありますか?
ありがとう!
解決
dba_queuesのキューのステータスは何ですか
select owner,name,enqueue_enabled,dequeue_enabled from dba_queues;
キューが無効になっている場合は、
begin
dbms_aqadm.start_queue(queue_name => '<OWNER.QUEUE_NAME>');
end; /
これは再起動全体に持続するはずだと思いますが、テストしていません。
他のヒント
私の場合、それは
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;
これは すべてのボイラープレート そして、それは私が実際にメッセージを受信することを可能にします。
所属していません StackOverflow