oracle hintÖÐordered ºÍleadingÔÀíºÜºÃµÄÌû×Ó
ÎÊÌ⣺Çë½ÌHINTд·¨
ÎÒÓÐÒ»¸öSQLÌí¼ÓÈçÏÂhint,Ä¿µÄÊÇÖ¸¶¨hash_join·½Ê½¡£
select /*+ordered use_hash(a,b,c,d) */ *
from a,b,c,d
Where ...
ÆäÖÐ,
aÖ»ÓëbÓйØÁª¹ØÏµ£¬bÖ»ÓëcÓйØÁª¹ØÏµ£¬bÖ»ÓëcÓйØÁª¹ØÏµ,cÖ»ÓëdÓйØÁª¹ØÏµ£¬
ÊýÁ¿¼¶£ºa:1000Ìõ, b:100 ÍòÌõ£¬ c:800ÍòÌõ £¬ d£º100ÍòÌõ
Ö´Ðмƻ®Îª£º
Hash Join
---Hash Join
----- Hash Join
------ a
----- b
----- c
---d
¿¼Âǵ½d±í±È½ÏС£¬ÎÒÄܲ»ÄÜ×öµ½½«d±í×÷ΪÇý¶¯±í¡¢¶øa,b,c¹ØÁªÖ®ºóµÄ½á¹û×÷ΪprobÍâ±íÄØ£¬
ͨ¹ýOrderedºÃÏñÊÇûÓа취¿ØÖÆÕâÑù£¬¼ÓÁ˾ÍÖ»ÄÜÊÇa×÷ΪÇý¶¯±í×°ÔØÄڴ棬b×÷Ϊprob±íÓëÖ®¹ØÁª£¬
Ö®ºóµÄ½á¹ûÔÙ×÷ΪÇý¶¯±í£¬ÒÔ´ËÀàÍÆ¡£
ÓÃLeading¿ÉÒÔÂð£¿Çë¸ø³öÓï·¨£¬Ð»Ð»¡£
½â´ð£º
oracle 10gÖÐ
hash_join¿ÉÒÔͨ¹ýno_swap_join_inputs/swap_join_inputsÀ´Ç¿ÖÆ¿ØÖÆbuild±í£¬ÅäºÏleading»òÕßordered¿ÉÒÔ¿ØÖƶà±í֮ǰµÄÁ¬½Ó˳Ðò¡£
±ÈÈçt1,t2,t3,t4¹²4Õűí×öhash_join
¿ÉÒÔͨ¹ýordered+no_swap_join_inputs/swap_join_inputsÀ´ÊµÏÖ¡£
±ÈÈç
Èç¹ûÏëʵÏÖ
( T3 hash-join (T1 hash-join T2)) hash-join T4
t1×÷Ϊbuild±íºÍT2×öhash_join£¬È»ºót3×÷Ϊbuild±íºÍt1,t2µÄ½á¹û¼¯×÷hash_join,ÔÚ°Ñt3,t1,t2µÄ½á¹û¼¯×÷build±íºÍt4×öhash_join
ͨ¹ýsql¿ÉÒÔдΪ
MYDB@MYDB10G >select
2 /*+
3 ordered
4 use_hash(t2)
5 use_hash(t3)
6 swap_join_inputs(t3)
7 use_hash(t4)
8 no_swap_join_inputs(t4)
9 */
10 * from t1,t2,t3,t4
11 where t1.object_id=t2.object_id
12 and t2.object_name=t3.object_name
13 and t3.owner=t4.owner
14 and t4.owner='MYDB'
15 /
ÒÑÓÃʱ¼ä: 00: 00: 00.07
Ö´Ðмƻ®
------------------
Ïà¹ØÎĵµ£º
Ò»¡¢$vi $ORACLE_HOME/network/admin/sqlnet.ora
Èç¹û¸Ãsqlnet.oraÎļþ²»´æÔÚ£¬¿ÉÒÔ²ÉÓÃÈçÏ·½Ê½Éú³É
1£©¿ÉÒÔ¿½±´$ORACLE_HOME/network/admin/samples/sqlnet.oraµ½$ORACLE_HOME/network/admin/Ŀ¼ÏÂʹÓÃ
2£©Ê¹ÓÃnetca¹¤¾ß½øÐÐÅäÖã¬NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
¶þ¡¢ÉèÖûòÐ޸IJÎÊý£¨Èç¹û²ÎÊ ......
Ò». Oracle ¿ØÖÆÎļþÖ÷Òª°üº¬ÈçÏÂÌõÄ¿
DATABASE ENTRY
CHECKPOINT PROGRESS RECORDS
REDO THREAD RECORDS
LOG FILE RECORDS
DATA FILE RECORDS
TEMP FILE RECORDS
TABLESPACE RECORDS
LOG FILE HISTORY RECORDS
OFFLINE RANGE RECORDS
ARCHIVED LOG RECORDS
BACKUP SET RECORDS
BACKUP PIECE RECO ......
alert index mem_ct monitoring usage;
desc v$object_usage;
set linesize 190
select * from v$object_usage;
SQL>SET AUTOTRACE ON;
¡¡¡¡*autotrace¹¦ÄÜÖ»ÄÜÔÚSQL*PLUSÀïʹÓÃ
¡¡¡¡ÆäËûһЩʹÓ÷½·¨£º
¡¡¡¡2.2.1¡¢ÔÚSQLPLUSÖеõ½Óï¾ä×ܵÄÖ´ÐÐʱ¼ä
¡¡¡¡SQL> set timing on;
2.2.2¡¢Ö»ÏÔʾִÐмƻ®--(»áÍ¬Ê ......
DSIÊÇData Server
InternalsµÄËõд,ÊÇOracle¹«Ë¾ÄÚ²¿ÓÃÀ´ÅàѵOracleÊۺ󹤳ÌʦʹÓõĽ̲Ä.ÓÉÓÚijÖÖÔÒòÁ÷Â佺þ,
Êܵ½ÖÚ¶àOracle°®ºÃÕßµÄ×·Åõ, ²»¹ýÒªÊǹ¦Á¦²»µ½, ÔĶÁ·´¶øÎÞÒæ. DSI3ÊÇOracle 8ϵÁеÄ, DSI4ÊÇOracle 9ϵÁеÄ.
ÕâÑùµÄÎĵµÉÏͨ³£¶¼Ó¡×Å:Oracle Confidential:For internal Use Only.
DSI301 Advanced S ......
ÏÖÔÚµÄÏîÄ¿±È½Ï½ô£¬¼ÓÉÏ×Ô¼ºÒ²±È½ÏÀÁ£¬ÊµÔÚÊǓûʱ¼ä”д°¡£¬ºÇºÇ£¬×òÌì¿´µ½Ò»ÆªÍ¦ºÃµÄOracle´æ´¢¹ý³ÌµÄÀý×Ó£¬ÕýºÃ×î½üÒªÓã¬×ª¹ýÀ´´ó¼ÒÒ»Æð·ÖÏíһϣ¬Ð»Ð»£¨³¿¹âӳϼ£©£¬Ô×÷µØÖ·£ºhttp://blog.csdn.net/xuyabao/archive/2008/03/20/2200205.aspx¡£
--------------------×Ô¶¨Ò庯Êý¿ªÊ¼-------------- ......