JMS+Oracle Advanced Queue(AQ)Ó÷¨Êµ¼ù
×÷Õß:Ñî´óÓÑ,Óà´¨ ²âÊÔÔ±:Íõ½¡
¿ª·¢¹¤¾ß:Oracle Jdeveloper 10131
ÈíÓ²¼þ»·¾³:
²Ù×÷ϵͳlinux redhat 3.0 Êý¾Ý¿âΪOracle 10G 10.0.2
Ó¦Ó÷þÎñÆ÷ΪSOA Application Server 10131
¿ª·¢ÓïÑÔ:java
¹ØÓÚÌåϵ½á¹¹,˵¶àÁËÒ²ÈÃÈ˾õµÃÔÎ.ÎÒÖ±½ÓʾÀýÒ»¸ö×ö·¨,ÖÁÓÚÀí½â,¾ÍÂýÂý¿´Êé°É!
²½Öè:
1.
´´½¨Oracle AQ
Ê×ÏÈÒÔ³¬¼¶Óû§µÇ½Êý¾Ý¿â,Ð޸ıØÒª²ÎÊý,½¨Á¢AQÓû§,²¢¸øȨÏÞ.ÎÒÊÇʹÓÃsqlplus
Conn sys/******@SID as sysdba
Alter system set AQ_TM_PROCESSES=6
Alter system set JOB_QUEUE_PROCESSES=10
Create user aq identified by aq1234 default tablespace users
temporary tablespace temp quota unlimited on users;
Grant connect,resource to aq;
Grant aq_administrator_role to aq;
Grant execute on dbms_aqadm to aq;
Grant execute on dbms_aq to aq;
Grant create any table to aq;
Grant enqueue any queue,dequeue any queue to aq;
ÔÚÕâ²åÒ»¾ä,ÕâÑù´´½¨Ö»ÊÇΪÁ˱ãÓÚ²Ù×÷,´ó¼ÒÔÚÍâÃæʹÓÃÓ¦¸ÃÔÙ´´½¨Óû§,Ö»ÐèÒªÊÚÓèconnect,resource,²Ù×÷dbms_aqadmºÍ
dbms_aqµÄȨÏÞ¾Í×ã¹»ÁË.Èç¹ûÄãÏëÓÃÒ»¸öÓû§²Ù×÷ÁíÍâÒ»¸öÓû§µÄqueue(±ÈÈçaq1²Ù×÷aq´´½¨µÄqueue),ÄÇôֻÐèÒªÖ´ÐÐÏÂÃæµÄÃüÁî:
Conn aq/aq1234@sid
Execute
dbms_aqadm.grant_queue_privilege(‘enqueue’,’aq_queue’,’aq1’,false);
½âÊÍ:µÚÒ»¸ö²ÎÊýÊÇȨÏÞ,¿ÉÒÔÓÐÈý¸öÖµ,enqueue,dequeue,all(all¾ÍÊÇÇ°ÃæÁ½¸ö¶¼ÓÐ).µÚ¶þ¸ö²ÎÊýÊÇqueueµÄÃû×Ö,µÚÈý¸ö²ÎÊýµÄ°ÑȨÏÞ¸øÄĸöÈË,µÚËĸöµÄÒâ˼,Ôݲ»Ã÷°×,¾Í²»Ëµ.
ÏÂÃæ¾ÍÊǽ¨Á¢queue
tablesºÍqueueµÄʱ¼äÁË.ÓÃoemÀ´´´½¨ÊÇ×î¼òµ¥µÄ,´ó¼Ò×Ô¼º¿´Ò»ÏÂ,ÎÒ°ÑÓÃÃüÁî´´½¨µÄ¹ý³Ì˵ÏÂ:
Conn aq/aq1234@sid
--create a queue table.
BEGIN
dbms_aqadm.create_queue_table(
queue_table=>'JMSTEST_QT',
queue_payload_type=>'SYS.AQ$_JMS
_MESSAGE',
multiple_consumers =>
false,
comment => 'Queue Table For Resource Provider');
END;
/
--create a queue
BEGIN &
Ïà¹ØÎĵµ£º
ѧϰOracle DBAÒ²°ë¸ö¶àѧÆÚÁË£¬½ñÌìÃÍÈ»²Å·¢ÏÖ£¬ÔÀ´ÎÒµÄÊ黹ÊǺÜеģ¬ÉϿβÙ×÷ʱºòÒ²Ö»ÊÇÖªµÀ´ó¸ÅÔõô×ö£¬µ«ÊÇÒªÕæµÄÈ«²¿×Ô¼º×ö£¬¶ø²»È¥·Ê黹ÊÇÓÐÒ»¶¨µÄÄѶȵģ¬ËùÒÔÄØ£¬½ñÌ쿪ʼ½«DBA´ÓÍ·¸´Ï°Ò»±é£¬Í¬Ê±ÔÙ²Ù×÷Ò»±é¡£
µÚÒ»Õ£¬Ñ§µÄÊÇOracleµÄÌåϵ½á¹¹£ ......
ÉÏƪ½éÉÜÁ˾²Ä¬°²×°Êý¾Ý¿âÈí¼þ£¬ÏÂÃæ½éÉܾ²Ä¬´´½¨Êý¾Ý¿âµÄ·½·¨¡£
1. ÓÃDBCA¸ù¾ÝÖÖ×ÓÊý¾Ý¿â´´½¨Ò»¸öÄ£°å
£¨ÖÖ×ÓÊý¾Ý¿â¾ÍÊÇÔ´Êý¾Ý¿â£¬Èç¹ûûÓÐÔ´Êý¾Ý¿â£¬¿ÉÒÔÓÃDBCA´´½¨Ò»¸öеÄÄ£°æ»ò±à¼ÔÓеÄÄ£°æ£©
2. ½«Oracle DB°²×°ÅÌÀïÃæresponseĿ¼ÏµÄdbca.rsp¿½±´µ½±¾»úÉÏ
3. ÐÞ¸Ädbca.rspÎļþ£¬½«Ä£°åÃûºÍDBÃûÌí¼Ó½øÈ¥
GDB ......
sysdate+(5/24/60/60) ÔÚϵͳʱ¼ä»ù´¡ÉÏÑÓ³Ù5Ãë
sysdate+5/24/60 ÔÚϵͳʱ¼ä»ù´¡ÉÏÑÓ³Ù5·ÖÖÓ
sysdate+5/24 ÔÚϵͳʱ¼ä»ù´¡ÉÏÑÓ³Ù5Сʱ
sysdate+5 ÔÚϵͳʱ¼ä»ù´¡ÉÏÑÓ³Ù5Ìì
add_months(sysdate,-5) ÔÚϵͳʱ¼ä»ù´¡ÉÏÑÓ³Ù5ÔÂ
add_months(sysdate,-5*12) ÔÚϵͳʱ¼ä»ù´¡ÉÏÑÓ³Ù5Äê
ÉÏÔÂÄ©µÄÈÕÆÚ£ºselect last_day(add_mon ......
1¡¢ÓÃpl/sql developerÖ»µ¼³ö±í½á¹¹£¬²»µ¼³öÊý¾ÝµÄsqlÎļþ
´ð£º TOOLS-> Export Tables È»ºóÑ¡ÔñÖмäµÄ sqlInserts
ËüÓÐÒ»¸ö where clause ¿ÉÒÔÉèÖõÄ, ¿´µ½Ã»ÓÐ. ÌîÈë rownum < 0 ¾ÍOKÁË.
»ò ......