ORACLEÆô¶¯ÔÀí
Checkpoint
ºÜ¶àÈ˶¼°ÑcheckpointµÄ¸ÅÄî¸ø¸´ÔÓ»¯ÁË£¬ÆäʵcheckpointÕâ¸öÊý¾Ý¿â¸ÅÄîÒýÈëµÄÕæÕýÒâÒå¾ÍÊÇÓÃÀ´¼õÉÙÔÚÊý¾Ý¿â
»Ö¸´¹ý³ÌÖÐËù»¨µÄʱ¼ä(instance recovery),ÄÇôcheckpointÊÇÓÉËÀ´×öµÄÄØ?ÎÒÃǶ¼ÖªµÀÊý¾Ý¿âÖÐÓиöCKPT½ø³Ì£¬ÕâÊǸö
¿ÉÑ¡½ø³Ì£¬µ«ÊÇÕæÕýÖ´Ðмì²éµãµÄÈÎÎñ²¢²»ÊÇÓÉckptÀ´Íê³ÉµÄ£¬¶øÊÇckptÔÚ¸üпØÖÆÎļþºÍÊý¾ÝÎļþÍ·µÄÓйØÐÅÏ¢ºó£¬Í¨Öª
DBWn½ø³Ì£¬²úÉúÒ»¸ö¼ì²éµã£¬ÔÚ²úÉú¼ì²éµãµÄʱºò£¬DBWn½ø³Ì»á½«buffer cacheÖеÄÔàÊý¾Ý(µ±Ç°online redo log¶ÔÓ¦µÄÔà
Êý¾Ý)£¬Ð´ÈëÎÒÃǵÄÊý¾ÝÎļþµ±ÖС£Õâ¸öʱºòÈç¹ûÊý¾Ý¿â´Ëʱ±ÀÀ£(±ÈÈçÎÒÃÇ×ö¸öshutdown abort)£¬ÄÇôÔÚ½øÐÐʵÀý»Ö¸´µÄ
ʱºò¾Í¿ÉÒÔ²»ÐèÒªµ±Ç°online redo logµÄÄÚÈÝÁË£¬»áºÜ¿ì¾Í×öÍê¡£Òò´Ëckpt½ø³ÌÖ»ÊǸö¸¨Öú½ø³Ì£¬ËûµÄÈÎÎñ¸ü¶àµÄÊÇÓÃÀ´
ÔÚϵͳ×öcheckpointµÄʱºò¸üпØÖÆÎļþºÍÊý¾ÝÎļþÍ·ÖеÄÐÅÏ¢¡£ÆäʵÔÚoracle 8iµÄʱºòÄØ£¬ckptµÄÈÎÎñÒ»°ã¶¼ÊÇÓÉlgwr
½ø³ÌÀ´Íê³É£¬µ½ÁË8iÒÔºó£¬Ëæ×ÅCKPT½ø³ÌµÄÒýÈ룬lgwrµÄ¹¤×÷¸ºµ£¾Í¼õÇáÁ˺ܶà(commitµÄËٶȼӿìÁË)
ÄÇôÈçºÎÀ´²úÉú¼ì²éµãÄØ?
ÓÐÈýÖÖ·½·¨£¬¿ÉÒÔͨ¹ý
1.alter system checkpoint
2.alter system switch logfile
3.DBWn½ø³Ìд³öÔà¿é
SCN
ÔÚOracleÖÐÀí½âΪһ¸öÄÚ²¿Í¬²½Ê±ÖÓ£¬ÊÇϵͳ¸Ä±äºÅµÄËõд(system change number),ÔÚOracleÊý¾Ý¿âÖÐÎÒÃÇ¿ÉÒÔ
ͨ¹ýdbms_flashback°üÀ´²éѯµ±Ç°ÏµÍ³µÄ¸Ä±äºÅ£ºselect dbms_flashback.get_system_change_number from dual;Ò»°ãÀ´
½²SCNÖ÷ÒªÊÇÓÃÀ´±êʶÊý¾Ý¿âËù×öµÄËùÓиı䣬Õâ¸öSCNµÄ¸Ä±äÊÇÖ»ÄÜǰ½ø£¬²»ÄÜ»ØÍË£¬³ý·ÇÎÒÃÇ´òËãÖØ½¨¿â£¬Êý¾Ý¿âÖеÄ
SCNÓÀÔ¶²»»á¹é0£¬Ò»°ãÀ´ËµSCNµÄǰ½ø´¥·¢ÊÇÓÉcommitÀ´½øÐе쬳ýÁËÕâЩ¾ÝÎÒ¹Û²ìÿ¸ô3ÃëÖÖϵͳҲ¶¼»áË¢ÐÂÒ»´ÎSCN.
ÐèҪעÒâµÄÊÇ£º
1.CKPTÒ»¶¨ÊÇÊÇÔÚcheckpoint·¢ÉúµÄʱºò½«Êý¾Ý¿âµ±Ç°µÄSCN¸üÐÂÈëÊý¾Ý¿âÎļþÍ·ºÍ¿ØÖÆÎļþµ±ÖУ¬Í¬Ê±DBWn½ø³Ì
½«buffer cacheÖеÄÔàÊý¾Ý¿é(dirty blo
Ïà¹ØÎĵµ£º
¿ÉÒÔ¿´µ½MVIEWÔÚQuery RewriteÖеÄÖØÒªÐÔ, ÒªÔÚʵ¼ÊÓ¦ÓÃÖÐʹÓÃ, ¾ÍµÃÖªµÀËüµÄºÜ¶à·½Ãæ, ÆäÖÐË¢ÐÂÊÇ×îÖ÷ÒªµÄ:
1, MVIEWÈÕÖ¾µÄ½¨Á¢
2, »ã×ÜÐ͵ÄMIVEWµÄË¢ÐÂ
3, JOINÀàÐ͵ÄMVIEWµÄË¢ÐÂ
4, ¸ü¸´ÔÓµÄMVIEWµÄË¢ÐÂ
5, ·ÖÇøÊ±µÄMVIEWµÄË¢ÐÂ
ÔÚÕâ¶ùÎÒÃÇÖ÷ÒªÌÖÂÛµÄÊÇÈçºÎʵÏÖFastË¢ÐÂ, ·ñÔòûÓжàÉ ......
ÔËÐÐÁËOracleµÄLinux·þÎñÆ÷¸ü¸ÄÖ÷»úÃû
¼ÙÈçÒª°ÑÖ÷»úÃû¸ÄΪoratest¡£
$±íʾoracleÓû§²Ù×÷£»
#±íʾrootÓû§²Ù×÷¡£
DB£ºoracle10.2
OS£ºRHEL4.5
µÚÒ»²½£¬¹Ø±ÕÊý¾Ý¿âºÍ¼àÌý£¬dbconsole£º
$ dbshut
$ lsnrctl stop
µÚ¶þ²¿£º
# hostname oratest
µÚÈý²½£º
# vi /etc/sysconfig/network
¸ü¸Ähostname²ÎÊý¡£
µÚËIJ½ ......
// ½¨Á¢±í¿Õ¼ä£¨Ö¸¶¨Îļþ·¾¶£©¡£
create TABLESPACE EAS_D_sptcc0_STANDARD DATAFILE 'F:\oracledb\EAS_D_sptcc0_STANDARD.dbf' size 10000M EXTENT MANAGEMENT local;
// ɾ³ý±í¿Õ¼ä£¨Ö¸¶¨Îļþ·¾¶£©¡£
DROP TABLESPACE temp_data INCLUDING CONTENTS AND DATAFILES;
// ½¨Á¢ÁÙʱ±í¿Õ¼ä¡£
CREATE TEMPORARY TABLESPA ......
/**
* ¸üмǼ£¬Ô×Ó²Ù×÷£¬²»»ácommit
* @param sql_id
* @param condition
* @return
* @throws SQLException
*/
&nbs ......
ÏÂÃæ°´Àà±ðÁгöһЩORACLEÓû§³£ÓÃÊý¾Ý×ÖµäµÄ²éѯʹÓ÷½·¨¡£
Ò»¡¢Óû§
²é¿´µ±Ç°Óû§µÄȱʡ±í¿Õ¼ä
SQL>select username,default_tablespace from user_users;
²é¿´µ±Ç°Óû§µÄ½ÇÉ«
SQL ......