ORACLE¼Æ»®(schedule)Ïê½â
´´½¨job
jobÊÇÊ²Ã´ÄØ? ¼òµ¥µÄ˵¾ÍÊǼƻ®(schedule)¼ÓÉÏÈÎÎñ˵Ã÷. ÁíÍ⻹ÓÐһЩ±ØÐëµÄ²ÎÊý.
ÕâÀïÌáµ½µÄ"ÈÎÎñ"¿ÉÒÔÊÇÊý¾Ý¿âÄÚ²¿µÄ´æ´¢¹ý³Ì,ÄäÃûµÄPL/SQL¿é,Ò²¿ÉÒÔÊDzÙ×÷ϵͳ¼¶±ðµÄ½Å±¾.
¿ÉÒÔÓÐÁ½ÖÖ·½Ê½À´¶¨Òå"¼Æ»®":
1) ʹÓÃDBMS_SCHDULER.CREATE_SCHEDULE ¶¨ÒåÒ»¸ö¼Æ»®;
2) µ÷ÓÃDBMS_SCHDULER.CREATE_JOBE¹ý³ÌÖ±½ÓÖ¸¶¨ (ÏÂÃæ»áÏêϸ˵Ã÷)
ÔÚ´´½¨Ò»¸ö¼Æ»®Ê±£¬ÄãÖÁÉÙÐèÒªÖ¸¶¨ÏÂÃæµÄÊôÐÔ£¬ËüÃÇÊÇjobÔËÐÐËù±ØÐëµÄ:
¿ªÊ¼Ê±¼ä (start_time);
ÖØ¸´ÆµÂÊ (repeat_interval);
½áÊøÊ±¼ä (end_time)
ÁíÍ⣬¶ÔÓÚÒ»¸öjob¶øÑÔ£¬»¹ÓкܶàµÄ¸½¼Ó²ÎÊý:
job_class
job_priority
auto_drop
restartable
max_runs
max_failures
schedule_limit
logging_level
ÏÂÃæ£¬ÎÒÒÔÎÊ´ðµÄÐÎʽÀ´¾ßÌå½âÊÍ.
Q1:Ôõô´ÓÊý¾Ý¿âÖвéѯjobµÄÊôÐÔ ?
A1: ÓÐÁ½ÖÖ·½·¨:
1) ²éѯ(DBA|ALL|USER)_SCHEDULER_JOBS ÊÓͼ
(Ìáʾ: ¸ù¾ÝÓû§È¨Ï޵IJ»Í¬£¬Ñ¡ÔñÐԵIJéѯ DBA|ALL|USERÊÓͼ)
2) µ÷ÓÃDBMS_SCHEDULER°üÖеÄGET_ATTRIBUTE ¹ý³Ì
Q2: ÔõôÉèÖÃÕâЩÊôÐÔÄØ?
A2: Ò²ÊÇÓÐÁ½ÖÖ·½·¨
1) ÔÚ´´½¨jobʱֱ½ÓÖ¸¶¨
2) µ÷ÓÃDBMS_SCHEDULER°üÖеÄSET_ATTRIBUTE ¹ý³Ì
Q3: "ÎÒÐèҪʲôȨÏÞ²ÅÄÜ´´½¨job" ?
A3: ÄãÖÁÉÙÐèÒªcreate_jobÕâ¸öϵͳȨÏÞ¡£Èç¹ûÓû§ÓµÓÐcreate any jobÕâ¸öȨÏÞ£¬
Ëü¿ÉÒÔ´´½¨ÊôÖ÷ΪÈκÎÓû§(SYSÓû§³ýÍâ)µÄjob.
ȱʡÇé¿öÏÂ,job»á±»´´½¨ÔÚµ±Ç°µÄschemaÏ£¬²¢ÇÒÊÇûÓ줻îµÄ; Èç¹ûҪʹjobÒ»´´½¨
¾Í×Ô¶¯¼¤»î£¬ÐèÒªÏÔʽµÄÉèÖÃenabled ÊôÐÔΪtrue, À´¿´Ò»¸öÀý×Ó:
begin
dbms_scheduler.create_job
(
job_name => 'ARC_MOVE',
schedule_name => 'EVERY_60_MINS',
job_type => 'EXECUTABLE',
job_action => '/home/dbtools/move_arcs.sh',
enabled => true,
comments => 'Move Archived Logs to a Different Directory'
);
end;
/
Q4: Äܲ»ÄÜÏêϸµØ½²ÊöÒ»ÏÂÉÏÃæÕâ¸ö¹ý³ÌÓõ½µÄ¸÷¸ö²ÎÊý?
A4:
job_name: ¹ËÃû˼Òå,ÿ¸öjob¶¼±ØÐëÓÐÒ»¸öµÄÃû³Æ
schedule_name: Èç¹û¶¨ÒåÁ˼ƻ®£¬ÔÚÕâÀïÖ¸¶¨¼Æ»®µÄÃû³Æ
job_type: Ŀǰ֧³ÖÈýÖÖÀàÐÍ:
PL/SQL¿é: PLSQL_BLOCK,
´æ´¢¹ý³Ì: STORED_PROCEDURE
Íⲿ³ÌÐò: EXECUTABLE (Íⲿ³ÌÐò¿ÉÒÔÊÇÒ»¸öshell½Å±¾,Ò²¿ÉÒÔÊDzÙ×÷ϵͳ¼¶±ðµÄÖ¸Áî).
job_action: ¸ù¾Ýjob_typeµÄ²»Í¬£¬job_actionÓв»Í¬µÄº¬Òå.
Èç¹ûjob_typeÖ¸¶¨µÄÊÇ´æ´¢¹ý³Ì£¬¾ÍÐèÒªÖ¸¶¨´æ´¢¹ý³ÌµÄÃû×Ö;
Èç¹ûjob_typeÖ¸¶¨µÄÊÇPL/SQL¿é£¬¾ÍÐèÒªÊäÈë
Ïà¹ØÎĵµ£º
oracle±í¿Õ¼ä²Ù×÷Ïê½â
1
2
3×÷Õߣº À´Ô´£º ¸üÐÂÈÕÆÚ£º2006-01-04
5
6
7½¨Á¢±í¿Õ¼ä
8
9CREATE TABLESPACE data01
10DATAFILE '/ora ......
select sid,
p1,
p1raw,
p2,
p2raw,
p3,
p3raw,
&n ......
select * from test where rownum <=10 ÏÂÃæÊǹØÓÚrownumµÄ½éÉÜ ================================ RownumºÍrow_number() over()µÄʹÓà ROWNUMÊÇOracle´Ó8¿ªÊ¼ÌṩµÄÒ»¸öαÁУ¬ÊǰÑSQL³öÀ´µÄ½á¹û½øÐбàºÅ£¬Ê¼ÖÕ´Ó1¿ªÊ¼£¬³£¼ûµÄÓÃ;¾ÍÊÇÓÃÀ´·ÖÒ³Êä³ö. ±ÈÈç SELECT * from torderdetail a WHERE ROWNUM <= 10 ÕâÌõÓï¾ä¾ ......
¼×¹ÇÎÄÒѾÍê³ÉÁ˶ÔSUN¹«Ë¾µÄÊÕ¹º£¬ÓÚ1ÔÂ27ÈÕ·¢²¼Á˶ÔSun¸÷ÏîÒµÎñµÄÕûºÏ¹æ»®¡£×ÜÌåÉÏ˵£¬OracleÒª³ÉΪÈíÓ²¼þÒ»Ì廯µÄÕûÌå½â¾ö·½°¸µÄ³§ÉÌ¡£ ÒÔÏÂ¾ÍÆä¶Ô±¸ÊܹØ×¢µÄJava·½ÃæµÄ²ßÂÔ×ö¸ö½éÉÜ¡£
Java SE:
1£©ÍƳöJDK SE 7£¬ Ëü½«°üÀ¨¶à¸öÐµĹ¦ÄÜ£¬ÈçÌá¸ß¿ª·¢ÈËÔ±µÄЧÂÊ£¬Ìṩ¸ßÐÔÄÜ£¬¶Ô¶àºËоƬµÄÖ§³ÖµÈ¡£
2£©SunµÄHotSp ......
Ç°ÃæÒ»Ö±³¢ÊÔoracleµÄÁª»ú±¸·Ý¶¼Ã»Óгɹ¦£¬³öÏÖÁË0 file(s) copied£¬½ñÌìÖÕÓÚ·¢ÏÖÁËÎÊÌâËùÔÚ£¬Ìصͼ¶µÄ´íÎó¾ÍÊÇ£¬ÔÀ´Host copyÓï¾äÒªÔÚÔËÐÐÃüÁî´°¿ÚÏÂÔËÐвŻáÉúЧ£¬Ç°ÃæÒ»Ö±¶¼Ì«Ï°¹ßÔÚpl/sqlÖнøÐвÙ×÷ÁË¡£
oracle9iÁª»ú±¸·ÝµÄ¹ý³Ì
sql>alter tablespce mytp begin backup;
sql>host copy f:\oracle\oradata\myt ......