Démarrez Oracle dequeue au démarrage
Question
Je suis l'erreur suivante d'Oracle,
ORA-25226: dequeue failed, queue string.string is not enabled for dequeue
Et ce qui suit est la cause et l'action pour elle du document officiel:
Cause: The queue has not been enabled for dequeue.
Action: Enable the queue using START_QUEUE.
Mais cette erreur se produit chaque fois que redémarrer la base de données, est-il configuration pour définir pour démarrer le dequeue au démarrage de la base de données?
merci!
La solution
Quel est l'état de la file d'attente dans dba_queues
select owner,name,enqueue_enabled,dequeue_enabled from dba_queues;
Si la file d'attente est désactivée, puis démarrez avec
begin
dbms_aqadm.start_queue(queue_name => '<OWNER.QUEUE_NAME>');
end; /
Je crois que cela devrait se poursuivre à chaque redémarrage, je ne l'ai pas testé cependant.
Autres conseils
Dans mon cas, il a été causé par le manque de
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;
Il est tous boilerplate et me permet de recevoir des messages réellement.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow