OracleÊý¾Ý¿âÖÐË÷ÒýµÄά»¤
±¾ÎÄÖ»ÌÖÂÛOracleÖÐ×î³£¼ûµÄË÷Òý£¬¼´ÊÇB-treeË÷Òý¡£±¾ÎÄÖÐÉæ¼°µÄÊý¾Ý¿â°æ±¾ÊÇOracle8i¡£
¡¡¡¡Ò». ²é¿´ÏµÍ³±íÖеÄÓû§Ë÷Òý
¡¡¡¡ÔÚOracleÖУ¬SYSTEM±íÊÇ°²×°Êý¾Ý¿âʱ×Ô¶¯½¨Á¢µÄ£¬Ëü°üº¬Êý¾Ý¿âµÄÈ«²¿Êý¾Ý×ֵ䣬´æ´¢¹ý³Ì¡¢°ü¡¢º¯ÊýºÍ´¥·¢Æ÷µÄ¶¨ÒåÒÔ¼°ÏµÍ³»Ø¹ö¶Î¡£
¡¡¡¡Ò»°ãÀ´Ëµ£¬Ó¦¸Ã¾¡Á¿±ÜÃâÔÚSYSTEM±íÖд洢·ÇSYSTEMÓû§µÄ¶ÔÏó¡£ÒòΪÕâÑù»á´øÀ´Êý¾Ý¿âά»¤ºÍÖÎÀíµÄºÜ¶àÎÊÌâ¡£Ò»µ©SYSTEM±íËð»µÁË£¬Ö»ÄÜÖØÐÂÉú³ÉÊý¾Ý¿â¡£ÎÒÃÇ¿ÉÒÔÓÃÏÂÃæµÄÓï¾äÀ´¼ì²éÔÚSYSTEM±íÄÚÓÐûÓÐÆäËûÓû§µÄË÷Òý´æÔÚ¡£
¡¡¡¡
¡¡¡¡select count(*)
¡¡¡¡from dba_indexes
¡¡¡¡where tablespace_name = 'SYSTEM'
¡¡¡¡and owner not in ('SYS','SYSTEM')
¡¡¡¡/
¡¡¡¡¶þ. Ë÷ÒýµÄ´æ´¢Çé¿ö¼ì²é
¡¡¡¡OracleΪÊý¾Ý¿âÖеÄËùÓÐÊý¾Ý·ÖÅäÂß¼½á¹¹¿Õ¼ä¡£Êý¾Ý¿â¿Õ¼äµÄµ¥Î»ÊÇÊý¾Ý¿é£¨block£©¡¢·¶Î§£¨extent£©ºÍ¶Î£¨segment£©¡£
¡¡¡¡OracleÊý¾Ý¿é£¨block£©ÊÇOracleʹÓúͷÖÅäµÄ×îС´æ´¢µ¥Î»¡£ËüÊÇÓÉÊý¾Ý¿â½¨Á¢Ê±ÉèÖõÄDB_BLOCK_SIZE¾ö¶¨µÄ¡£Ò»µ©Êý¾Ý¿âÉú³ÉÁË£¬Êý¾Ý¿éµÄ´óС²»Äܸı䡣ҪÏë¸Ä±äÖ»ÄÜÖØн¨Á¢Êý¾Ý¿â¡££¨ÔÚOracle9iÖÐÓÐһЩ²»Í¬£¬²»¹ýÕâ²»ÔÚ±¾ÎÄÌÖÂ۵ķ¶Î§ÄÚ¡££©
¡¡¡¡ExtentÊÇÓÉÒ»×éÁ¬ÐøµÄblock×é³ÉµÄ¡£Ò»¸ö»ò¶à¸öextent×é³ÉÒ»¸ösegment¡£µ±Ò»¸ösegmentÖеÄËùÓпռ䱻ÓÃÍêʱ£¬OracleΪËü·ÖÅäÒ»¸öеÄextent¡£
¡¡¡¡SegmentÊÇÓÉÒ»¸ö»ò¶à¸öextent×é³ÉµÄ¡£Ëü°üº¬Ä³±í¿Õ¼äÖÐÌض¨Âß¼´æ´¢½á¹¹µÄËùÓÐÊý¾Ý¡£Ò»¸ö¶ÎÖеÄextent¿ÉÒÔÊDz»Á¬ÐøµÄ£¬ÉõÖÁ¿ÉÒÔÔÚ²»Í¬µÄÊý¾ÝÎļþÖС£
¡¡¡¡Ò»¸öobjectÖ»ÄܶÔÓ¦ÓÚÒ»¸öÂß¼´æ´¢µÄsegment£¬ÎÒÃÇͨ¹ý²é¿´¸ÃsegmentÖеÄextent£¬¿ÉÒÔ¿´³öÏàÓ¦objectµÄ´æ´¢Çé¿ö¡£
¡¡¡¡£¨1£©²é¿´Ë÷Òý¶ÎÖÐextentµÄÊýÁ¿£º
¡¡¡¡
¡¡¡¡select segment_name, count(*)
¡¡¡¡from dba_extents
¡¡¡¡where segment_type='INDEX'
¡¡¡¡and owner=UPPER('&owner')
¡¡¡¡group by segment_name
¡¡¡¡/
¡¡¡¡£¨2£©²é¿´±í¿Õ¼äÄÚµÄË÷ÒýµÄÀ©Õ¹Çé¿ö£º
¡¡¡¡
¡¡¡¡select
¡¡¡¡substr(segment_name,1,20) "SEGMENT NAME",
¡¡¡¡bytes,
¡¡¡¡count(bytes)
¡¡¡¡from dba_extents
¡¡¡¡where segment_name in
¡¡¡¡( select index_name
¡¡¡¡from dba_indexes
¡¡¡¡where tablespace_name=UPPER('&±í¿Õ¼ä'))
¡¡¡¡group by segment_name,bytes
¡¡¡¡order by segment_name
¡¡¡¡/
¡¡¡¡Èý. Ë÷ÒýµÄÑ¡ÔñÐÔ
¡¡¡¡Ë÷ÒýµÄÑ¡ÔñÐÔÊÇÖ¸Ë÷ÒýÁÐÖв»Í¬ÖµµÄÊýÄ¿Óë±íÖмǼÊýµÄ±È¡£¼ÙÈçÒ»¸
Ïà¹ØÎĵµ£º
Ò»¡£ÓÐÊý¾ÝÎļþ¡¢¿ØÖÆÎļþºÍÈÕÖ¾ÎļþµÄ±¸·Ý1.·þÎñÆ÷ÖØ×°Á˲Ù×÷ϵͳ£¬oracleÒ²ÖØ×°ÁË¡£Èç¹ûÖØ×°µÄoracleºÍÒÔÇ°Ë𻵵ÄÊý¾Ý¿âÊÇһģһÑùµÄ½á¹¹£¬ÄÇô´ËʱµÄ»Ö¸´ÊDZȽϼòµ¥µÄ¡£
1£©É¾³ýµôн¨Êý¾Ý¿âµÄËùÓÐÊý¾ÝÎļþ¡¢¿ØÖÆÎļþºÍÈÕÖ¾Îļþ¡£CopyÔÊý¾Ý¿âµÄÊý¾ÝÎļþ¡¢¿ØÖÆÎļþºÍÈÕÖ¾Îļþµ½¶ÔӦĿ¼Ï¡£
  ......
-½¨Á¢±í¿Õ¼ä(oracleÖеÄtablespace(±í¿Õ¼ä)¾ÍÏ൱ÓÚsqlserverµÄdatabase)
CREATE TABLESPACE data01
DATAFILE 'D:\oracle\ora92\oradata\db\DATA01.dbf' SIZE 200M
UNIFORM SIZE 128k;
#Ö¸¶¨Çø³ß´çΪ128k,Èç²»Ö¸¶¨£¬Çø³ß´çĬÈÏΪ64k
--½¨Á¢ÁÙʱ±í¿Õ¼ä
CREATE TEMPORARY TABLESPACE temp_data
TEMPFILE 'D:\TEMP_DA ......
1¡¢²éѯµÚ¼¸ÐеļǼ
select sal from emp where rownum=1; //²éѯµÃµ½µÚÒ»ÐмǼ
select sal from emp where rownum=5; //²»¿ÉÒÔ²éѯµ½µÚÎåÐмǼ£¬ÒòΪrownum ×ÜÊÇ´Ó1¿ªÊ¼²éѯµÄ£¬¹ÊÕâÖÖ·½Ê½²»¿ÉÒÔÖ±½ÓµÃµ½µÚ¼¸ÐеļǼ¡£ÈôÏëµÃµ½µÚÎåÐмǼ£¬Ó¦²ÉÓÃÈçÏ·½Ê½£º
select r,sal from (select rownum r,sal from emp) wher ......
user_objects Óû§¶ÔÏóÐÅÏ¢
user_source Êý¾Ý¿âÓû§µÄËùÓÐ×ÊÔ´¶ÔÏóÐÅÏ¢
user_segments Óû§µÄ±í¶ÎÐÅÏ¢
user_tables Óû§µÄ±í¶ÔÏóÐÅÏ¢
user_tab_columns Óû§µÄ±íÁÐÐÅÏ¢
user_constraints Óû§µÄ¶ÔÏóÔ¼ÊøÐÅÏ¢
user_sys_privs µ±Ç°Óû§µÄϵͳȨÏÞÐÅÏ¢
user_tab_privs µ±Ç°Óû§µÄ¶ÔÏóȨÏÞÐÅÏ¢
user_col_privs µ± ......
v$database Êý¾Ý¿âÐÅÏ¢
v$datafile Êý¾ÝÎļþÐÅÏ¢
v$controlfile ¿ØÖÆÎļþÐÅÏ¢
v$logfile ÖØ×öÈÕÖ¾ÐÅÏ¢
v$instance Êý¾Ý¿âʵÀýÐÅÏ¢
v$log ÈÕÖ¾×éÐÅÏ¢
v$loghist ÈÕÖ¾ÀúÊ·ÐÅÏ¢
v$sga Êý¾Ý¿âSGAÐÅÏ¢
v$parameter ³õʼ»¯²ÎÊýÐÅÏ¢
v$process Êý¾Ý¿â·þÎñÆ÷½ø³ÌÐÅÏ¢
v$bgprocess Êý¾Ý¿âºǫ́½ø³ÌÐÅÏ¢
v$controlfil ......