Oracle Flashback ¼¼Êõ ×ܽá
Flashback ¼¼ÊõÊÇÒÔUndo segmentÖеÄÄÚÈÝΪ»ù´¡µÄ£¬ Òò´ËÊÜÏÞÓÚUNDO_RETENTON²ÎÊý¡£ÒªÊ¹ÓÃflashback µÄÌØÐÔ£¬±ØÐëÆôÓÃ×Ô¶¯³·Ïú¹ÜÀí±í¿Õ¼ä¡£
ÔÚOracle 10gÖУ¬ Flash back¼Ò×å·ÖΪÒÔϳÉÔ±£º Flashback Database£¬ Flashback Drop£¬Flashback Query(·ÖFlashback Query,Flashback Version Query£¬ Flashback Transaction Query ÈýÖÖ) ºÍFlashback Table¡£
Ò»£® Flashback Database
Flashback Database ¹¦Äܷdz£ÀàËÆÓëRMANµÄ²»ÍêÈ«»Ö¸´£¬ Ëü¿ÉÒÔ°ÑÕû¸öÊý¾Ý¿â»ØÍ˵½¹ýÈ¥µÄij¸öʱµãµÄ״̬£¬ Õâ¸ö¹¦ÄÜÒÀÀµÓÚFlashback log ÈÕÖ¾¡£ ±ÈRMAN¸ü¿ìËٺ͸ßЧ¡£ Òò´ËFlashback Database ¿ÉÒÔ¿´×÷ÊDz»ÍêÈ«»Ö¸´µÄÌæ´ú¼¼Êõ¡£ µ«ËüÒ²ÓÐijЩÏÞÖÆ£º
1. Flashback Database ²»Äܽâ¾öMedia Failure£¬ ÕâÖÖ´íÎóRMAN»Ö¸´ÈÔÊÇΨһѡÔñ
2. Èç¹ûɾ³ýÁËÊý¾ÝÎļþ»òÕßÀûÓÃShrink¼¼ÊõËõСÊý¾ÝÎļþ´óС£¬Õâʱ²»ÄÜÓÃFlashback Database¼¼Êõ»ØÍ˵½¸Ä±ä֮ǰµÄ״̬£¬Õâʱºò¾Í±ØÐëÏÈÀûÓÃRMAN°Ñɾ³ý֮ǰ»òÕßËõС֮ǰµÄÎļþ±¸·Ýrestore ³öÀ´£¬ È»ºóÀûÓÃFlashback Database Ö´ÐÐʣϵÄFlashback Datbase¡£
3. Èç¹û¿ØÖÆÎļþÊÇ´Ó±¸·ÝÖлָ´³öÀ´µÄ£¬»òÕßÊÇÖØ½¨µÄ¿ØÖÆÎļþ£¬Ò²²»ÄÜʹÓÃFlashback Database¡£
4. ʹÓÃFlashback DatabaseËøÄָܻ´µ½µÄ×îÔçµÄSCN£¬ È¡¾öÓëFlashback LogÖмǼµÄ×îÔçSCN¡£
Flashback Database ¼Ü¹¹
Flashback Database Õû¸ö¼Ü¹¹°üÀ¨Ò»¸ö½ø³ÌRecover Writer(RVWR)ºǫ́½ø³Ì£¬Flashback Database LogÈÕÖ¾ ºÍFlash Recovery Area¡£Ò»µ©Êý¾Ý¿âÆôÓÃÁËFlashback Database£¬ ÔòRVWR½ø³Ì»áÆô¶¯£¬¸Ã½ø³Ì»áÏòFlash Recovery AreaÖÐдÈëFlashback Database Log£¬ ÕâЩÈÕÖ¾°üÀ¨µÄÊÇÊý¾Ý¿éµÄ " ǰ¾µÏñ(before image)"£¬ ÕâÒ²ÊÇFlashback Database ¼¼Êõ²»ÍêÈ«»Ö¸´¿éµÄÔÒò¡£
[oracle@dba ~]$ ps -ef|grep rvw
oracle 12620 12589 0 13:21 pts/1 00:00:00 gr
Ïà¹ØÎĵµ£º
SQLServerºÍOracleµÄ³£Óú¯Êý¶Ô±È
¡¡¡¡1.¾ø¶ÔÖµ
¡¡¡¡S:select abs(-1) value
¡¡¡¡O:select abs(-1) value from dual
¡¡¡¡2.È¡Õû(´ó)
¡¡¡¡S:select ceiling(-1.001) value
¡¡¡¡O:select ceil(-1.001) value from dual
¡¡¡¡3.È¡Õû£¨Ð¡£©
¡¡¡¡S:select floor(-1.001) value
¡¡¡¡O:select floor(-1.001) valu ......
Ö»ÊÇsqlserver ÌṩµÄÔ¶³ÌÊý¾Ý·ÃÎʺ¯Êý; ÔÚ±¾µØsqlserver ÖÐÈ¡ÍⲿÊý¾ÝÔ´Êý¾Ýʱºò¿ÉÓÃ;
¶ÔÁ¬½Ó±¾µØ oracle ²Ù×÷Ô¶³Ì oracle ²»ÄÜʹÓÃ; ²âÊÔ: pl/sql ÖÐʹÓÃ:
select * from openrowset(................); ÎÞЧ!!!!!!!!!!!!!!
ÔÚoracle ÖÐÐèÒª·ÃÎÊÔ¶³ÌÊý¾Ý,ÐèÒª½¨Á¢Ò»Á¬½ÓÔ¶³Ìoracle µÄ dblink ;
ÔÙÓÃÈçÏ·½ ......
ÏÞÖÆË÷ÒýÊÇһЩûÓоÑéµÄ¿ª·¢ÈËÔ±¾³£·¸µÄ´íÎóÖ®Ò»¡£ÔÚSQLÖÐÓкܶàÏÝÚå»áʹһЩË÷ÒýÎÞ·¨Ê¹Óá£ÏÂÃæÌÖÂÛһЩ³£¼ûµÄÎÊÌ⣺
1 ʹÓò»µÈÓÚ²Ù×÷·û(<>¡¢!=)
ÏÂÃæµÄ²éѯ¼´Ê¹ÔÚcust_ratingÁÐÓÐÒ»¸öË÷Òý£¬²éѯÓï¾äÈÔȻִÐÐÒ»´ÎÈ«±íɨÃè¡£
  ......
ÔÚORACLEÖиø±í¡¢ÁÐÔö¼Ó×¢ÊÍÒÔ¼°¶ÁȡעÊÍ
1¡¢¸ø±íÌî¼Ó×¢ÊÍ£ºSQL>comment on table ±íÃû is '±í×¢ÊÍ";
2¡¢¸øÁмÓ×¢ÊÍ£ºSQL>comment on column ±í.ÁÐ is 'ÁÐ×¢ÊÍ';
3¡¢¶ÁÈ¡±í×¢ÊÍ£ºSQL>select * from user_tab_comments where comments is not null;
4¡¢¶ÁÈ¡ÁÐ×¢ÊÍ£ºSQL>select * from user_col_commnents wh ......
Oracle ´¥·¢Æ÷ÓÐÓï¾ä¼¶´¥·¢Æ÷ºÍÐм¶´¥·¢Æ÷
Óï¾ä¼¶´¥·¢Æ÷ µ±É¾³ý²¿ÃűíÖеIJ¿ÃźÅʱ£¬Í¬Ê±É¾³ýµôÔ±¹¤±íÖв¿ÃźÅΪ£ºold.deptnoµÄ¼Ç¼
create or replace trigger del_dept_id
after delete on dept
for each row
begin
delete from emp where deptno=:old.deptno;
end;
µ±Íù²¿Ãűí²åÈëʱ£¬Í¬Ê±ÔÚÔ±¹¤±íÖ ......