Oracle Shrink Table
´Ó10g¿ªÊ¼£¬oracle¿ªÊ¼ÌṩShrinkµÄÃüÁ¼ÙÈçÎÒÃǵıí¿Õ¼äÖÐÖ§³Ö×Ô¶¯¶Î¿Õ¼ä¹ÜÀí (ASSM),¾Í¿ÉÒÔʹÓÃÕâ¸öÌØÐÔËõС¶Î£¬¼´½µµÍHWM¡£ÕâÀïÐèҪǿµ÷Ò»µã£¬10gµÄÕâ¸öÐÂÌØÐÔ£¬½ö¶ÔASSM±í¿Õ¼äÓÐЧ£¬·ñÔò»á±¨ ORA-10635: Invalid segment or tablespace type¡£
Èç¹û¾³£ÔÚ±íÉÏÖ´ÐÐDML²Ù×÷£¬»áÔì³ÉÊý¾Ý¿â¿éÖÐÊý¾Ý·Ö²¼Ï¡Ê裬ÀË·Ñ´óÁ¿¿Õ¼ä¡£Í¬Ê±Ò²»áÓ°ÏìÈ«±íɨÃèµÄÐÔÄÜ£¬ÒòΪȫ±íɨÃèÐèÒª·ÃÎʸü¶àµÄÊý¾Ý¿é¡£´Óoracle10g¿ªÊ¼£¬±í¿ÉÒÔͨ¹ýshrinkÀ´ÖØ×éÊý¾ÝʹÊý¾Ý·Ö²¼¸ü½ôÃÜ£¬Í¬Ê±½µµÍHWMÊÍ·Å¿ÕÏÐÊý¾Ý¿é¡£
segment shrink·ÖΪÁ½¸ö½×¶Î£º
1¡¢Êý¾ÝÖØ×é(compact):ͨ¹ýһϵÁÐinsert¡¢delete²Ù×÷£¬½«Êý¾Ý¾¡Á¿ÅÅÁÐÔڶεÄÇ°Ãæ¡£ÔÚÕâ¸ö¹ý³ÌÖÐÐèÒªÔÚ±íÉϼÓRXËø£¬¼´Ö»ÔÚÐèÒªÒÆ¶¯µÄÐÐÉϼÓËø¡£ÓÉÓÚÉæ¼°µ½rowidµÄ¸Ä±ä£¬ÐèÒªenable row movement.ͬʱҪdisable»ùÓÚrowidµÄtrigger.ÕâÒ»¹ý³Ì¶ÔÒµÎñÓ°Ïì±È½ÏС¡£
2¡¢HWMµ÷Õû£ºµÚ¶þ½×¶ÎÊǵ÷ÕûHWMλÖã¬ÊÍ·Å¿ÕÏÐÊý¾Ý¿é¡£´Ë¹ý³ÌÐèÒªÔÚ±íÉϼÓXËø£¬»áÔì³É±íÉϵÄËùÓÐDMLÓï¾ä×èÈû¡£ÔÚÒµÎñÌØ±ð·±Ã¦µÄϵͳÉÏ¿ÉÄÜÔì³É±È½Ï´óµÄÓ°Ïì¡£
shrink spaceÓï¾äÁ½¸ö½×¶Î¶¼Ö´ÐС£
shrink space compactÖ»Ö´ÐеÚÒ»¸ö½×¶Î¡£
Èç¹ûϵͳҵÎñ±È½Ï·±Ã¦£¬¿ÉÒÔÏÈÖ´ÐÐshrink space compactÖØ×éÊý¾Ý,È»ºóÔÚÒµÎñ²»Ã¦µÄʱºòÔÙÖ´ÐÐshrink space½µµÍHWMÊÍ·Å¿ÕÏÐÊý¾Ý¿é¡£
shrink±ØÐ뿪ÆôÐÐÇ¨ÒÆ¹¦ÄÜ¡£
alter table table_name enable row movement ;
×¢Ò⣺alter table XXX enable row movementÓï¾ä»áÔì³ÉÒýÓñíXXXµÄ¶ÔÏó(Èç´æ´¢¹ý³Ì¡¢°ü¡¢ÊÓͼµÈ)±äΪÎÞЧ¡£Ö´ÐÐÍê³Éºó£¬×îºÃÖ´ÐÐÒ»ÏÂutlrp.sqlÀ´±àÒëÎÞЧµÄ¶ÔÏó¡£
Óï·¨£º
alter table <table_name> shrink space [ <null> | compact | cascade ];
alter table <table_name> shrink space compcat;
ÊÕËõ±í£¬Ï൱ÓÚ°Ñ¿éÖÐÊý¾Ý´ò½áʵÁË£¬µ«»á±£³Ö high water mark;
alter table <tablespace_name> shrink space;
ÊÕËõ±í£¬½µµÍ high water mark;
alter table <tablespace_name> shrink space cascade;
ÊÕËõ±í£¬½µµÍ high water mark£¬²¢ÇÒ
Ïà¹ØÎĵµ£º
SQLÖеĵ¥¼Ç¼º¯Êý
Ò»¡¢×Ö·ûº¯Êý
1.ASCII
·µ»ØÓëÖ¸¶¨µÄ×Ö·û¶ÔÓ¦µÄÊ®½øÖÆÊý;
SQL> select ascii(’A’) A,ascii(’a’) a,ascii(’0’) zero,ascii(’ ’) space from dual;
A A ZERO SPACE
--------- --------- --------- ---------
65 97 48 32
......
Stream ÊÇOracle µÄÏûÏ¢¶ÓÁÐ(Ò²½ÐOracle Advanced Queue)¼¼ÊõµÄÒ»ÖÖÀ©Õ¹Ó¦ÓᣠOracle µÄÏûÏ¢¶ÓÁÐÊÇͨ¹ý·¢²¼/¶©Ôĵķ½Ê½À´½â¾öʼþ¹ÜÀí¡£Á÷¸´ÖÆ(Stream replication)Ö»ÊÇ»ùÓÚËüµÄÒ»¸öÊý¾Ý¹²Ïí¼¼Êõ£¬Ò²¿ÉÒÔ±»ÓÃ×÷Ò»¸ö¿ÉÁé»î¶¨ÖƵĸ߿ÉÓÃÐÔ·½°¸¡£ Ëü¿ÉÒÔʵÏÖÁ½¸öÊý¾Ý¿âÖ®¼äÊý¾Ý¿â¼ ......
³õѧlinux+oracle£¬²ÉÓõı¾µØÐéÄâ»ú°²×°linuxµÄ·½Ê½£¬°æ±¾ÊÇRed Hat 5£¬Î¨Ò»¸úÐéÄâ»ú°²×°ÆäËûϵͳ²»Í¬µÄÊÇ£º¶¨ÖÆ£¬Ñ¡IDEÓ²ÅÌ£¬·ñÔò°²×°¹ý³ÌÌáʾÕÒ²»µ½Ó²ÅÌʧ°Ü¡£
±¾ÎÄÖØµãÊÇOracle°²×°¹ý³Ì£¬°æ±¾ 10.1.0¡£
3¡¢°²×°Ïà¹ØµÄ¿ª·¢°ü£¨rpm°ü£©£º
rpm -q binutils co ......
Union£¬¶ÔÁ½¸ö½á¹û¼¯½øÐв¢¼¯²Ù×÷£¬²»°üÀ¨Öظ´ÐУ¬Í¬Ê±½øÐÐĬÈϹæÔòµÄÅÅÐò£»
Union All£¬¶ÔÁ½¸ö½á¹û¼¯½øÐв¢¼¯²Ù×÷£¬°üÀ¨Öظ´ÐУ¬²»½øÐÐÅÅÐò£»
Intersect£¬¶ÔÁ½¸ö½á¹û¼¯½øÐн»¼¯²Ù×÷£¬²»°üÀ¨Öظ´ÐУ¬Í¬Ê±½øÐÐĬÈϹæÔòµÄÅÅÐò£»
Minus£¬¶ÔÁ½¸ö½á¹û¼¯½øÐвî²Ù×÷£¬²»°üÀ¨Öظ´ÐУ¬Í¬Ê±½øÐÐĬÈϹæÔòµÄÅÅÐò¡£
¿ÉÒÔÔÚ×î ......
1.ASCII
·µ»ØÓëÖ¸¶¨µÄ×Ö·û¶ÔÓ¦µÄÊ®½øÖÆÊý;
SQL> select ascii(’A’) A,ascii(’a’) a,ascii(’0’) zero,ascii(’ ’) space from dual;
A A ZERO SPACE
--------- --------- --------- ---------
65 97 48 32
2.CHR
¸ø³öÕ ......