¡¾×ª¡¿ OracleÐÔÄÜÓÅ»¯¼¼ÇÉ
OracleÐÔÄÜÓÅ»¯¼¼ÇÉ
http://tech.it168.com/db/o/2006-06-15/200606151715426.shtml
1.Ñ¡ÓÃÊʺϵÄORACLEÓÅ»¯Æ÷
ORACLEµÄÓÅ»¯Æ÷¹²ÓÐ3ÖÖ:
1.RULE(»ùÓÚ¹æÔò) 2.COST(»ùÓڳɱ¾) 3.CHOOSE(Ñ¡ÔñÐÔ)
ÉèÖÃȱʡµÄÓÅ»¯Æ÷,¿ÉÒÔͨ¹ý¶Ôinit.oraÎļþÖÐOPTIMIZER_MODE²ÎÊýµÄ¸÷ÖÖÉùÃ÷,ÈçRULE,COST,CHOOSE,ALL_ROWS,FIRST_ROWS . Ä㵱ȻҲÔÚSQL¾ä¼¶»òÊǻỰ(session)¼¶¶ÔÆä½øÐи²¸Ç.
ΪÁËʹÓûùÓڳɱ¾µÄÓÅ»¯Æ÷(CBO, Cost-Based Optimizer) , Äã±ØÐë¾³£ÔËÐÐanalyze ÃüÁî,ÒÔÔö¼ÓÊý¾Ý¿âÖеĶÔÏóͳ¼ÆÐÅÏ¢(object statistics)µÄ׼ȷÐÔ.
Èç¹ûÊý¾Ý¿âµÄÓÅ»¯Æ÷ģʽÉèÖÃΪѡÔñÐÔ(CHOOSE),ÄÇôʵ¼ÊµÄÓÅ»¯Æ÷ģʽ½«ºÍÊÇ·ñÔËÐйýanalyzeÃüÁîÓйØ. Èç¹ûtableÒѾ±»analyze¹ý, ÓÅ»¯Æ÷ģʽ½«×Ô¶¯³ÉΪCBO , ·´Ö®,Êý¾Ý¿â½«²ÉÓÃRULEÐÎʽµÄÓÅ»¯Æ÷.
ÔÚȱʡÇé¿öÏÂ,ORACLE²ÉÓÃCHOOSEÓÅ»¯Æ÷, ΪÁ˱ÜÃâÄÇЩ²»±ØÒªµÄÈ«±íɨÃè(full table scan) , Äã±ØÐ뾡Á¿±ÜÃâʹÓÃCHOOSEÓÅ»¯Æ÷,¶øÖ±½Ó²ÉÓûùÓÚ¹æÔò»òÕß»ùÓڳɱ¾µÄÓÅ»¯Æ÷.
2.·ÃÎÊTableµÄ·½Ê½
ORACLE ²ÉÓÃÁ½ÖÖ·ÃÎʱíÖмǼµÄ·½Ê½:
1.È«±íɨÃè
È«±íɨÃè¾ÍÊÇ˳ÐòµØ·ÃÎʱíÖÐÿÌõ¼Ç¼. ORACLE²ÉÓÃÒ»´Î¶ÁÈë¶à¸öÊý¾Ý¿é(database block)µÄ·½Ê½ÓÅ»¯È«±íɨÃè.
2.ͨ¹ýROWID·ÃÎʱí
Äã¿ÉÒÔ²ÉÓûùÓÚROWIDµÄ·ÃÎÊ·½Ê½Çé¿ö,Ìá¸ß·ÃÎʱíµÄЧÂÊ, , ROWID°üº¬Á˱íÖмǼµÄÎïÀíλÖÃÐÅÏ¢..ORACLE²ÉÓÃË÷Òý(INDEX)ʵÏÖÁËÊý¾ÝºÍ´æ·ÅÊý¾ÝµÄÎïÀíλÖÃ(ROWID)Ö®¼äµÄÁªÏµ. ͨ³£Ë÷ÒýÌṩÁË¿ìËÙ·ÃÎÊROWIDµÄ·½·¨,Òò´ËÄÇЩ»ùÓÚË÷ÒýÁеIJéѯ¾Í¿ÉÒԵõ½ÐÔÄÜÉϵÄÌá¸ß.
3.¹²ÏíSQLÓï¾ä
ΪÁ˲»Öظ´½âÎöÏàͬµÄSQLÓï¾ä,ÔÚµÚÒ»´Î½âÎöÖ®ºó, ORACLE½«SQLÓï¾ä´æ·ÅÔÚÄÚ´æÖÐ.Õâ¿éλÓÚϵͳȫ¾ÖÇøÓòSGA(system global area)µÄ¹²Ïí³Ø(shared buffer pool)ÖеÄÄÚ´æ¿ÉÒÔ±»ËùÓеÄÊý¾Ý¿âÓû§¹²Ïí. Òò´Ë,µ±ÄãÖ´ÐÐÒ»¸öSQLÓï¾ä(ÓÐʱ±»³ÆÎªÒ»¸öÓαê)ʱ,Èç¹ûËüºÍ֮ǰµÄÖ´ÐйýµÄÓï¾äÍêÈ«Ïàͬ, ORACLE¾ÍÄܺܿì»ñµÃÒѾ±»½âÎöµÄÓï¾äÒÔ¼°×îºÃµÄÖ´Ðз¾¶. ORACLEµÄÕâ¸ö¹¦ÄÜ´ó´óµØÌá¸ßÁËSQLµÄÖ´ÐÐÐÔÄܲ¢½ÚÊ¡ÁËÄÚ´æµÄʹÓÃ.
¿ÉϧµÄÊÇORACLEÖ»¶Ô¼òµ¥µÄ±íÌṩ¸ßËÙ»º³å(cache buffering)
Ïà¹ØÎĵµ£º
×î½ü×öÁ˸öÏîÄ¿£¬ÊµÏÖ¶Ô´æÔÚǧÍòÌõ¼Ç¼µÄ¿â±í½øÐвåÈë¡¢²éѯ²Ù×÷¡£ÔÒÔΪ¶ÔÊý¾Ý¿âµÄ²åÈë¡¢²éѯÊǼþºÜÈÝÒ×µÄÊ£¬¿É²»Öªµ±Êý¾Ý´ïµ½°ÙÍòÉõÖÁǧÍòÌõ¼¶±ðµÄʱºò£¬ÕâÒ»ÇÐËÆºõ±äµÃÏ൱À§ÄÑ¡£¼¸¾ÕÛÌÚ£¬×ÜËãÍê³ÉÁËÈÎÎñ¡£
1¡¢ ±ÜÃâʹÓÃHibernate¿ò¼Ü
HibernateÓÃÆðÀ´ËäÈ»·½±ã£¬µ«¶ÔÓÚº£Á¿Êý¾ÝµÄ²Ù×÷ÏÔµÃÁ¦²»´ÓÐÄ¡£
¹ØÓÚ²åÈ룺
......
¾³£ÔÚÆ½Ê±µÄ¿ª·¢ÖÐÒªÓõ½oracleµÄÈÕÆÚº¯Êý£¬Ã¿´Î¶¼ÒªÉÏÍøÈ¥²é£¬ÏÖÔÚÓеãʱ¼ä£¬×Ô¼ºÊÕ¼¯ÕûÀíÁËһϡ£ÌùÔÚÕâÀ·½±ã×Ô¼º£¬Ò²·½±ã´ó¼Ò¡£
----------------------------------------------------------------------------------------------------------------------------------
³£ÓÃÈÕÆÚÐͺ¯Êý
1¡£Sysdate µ±Ç°È ......
¶ÔÿһÐÐÊäÈëÖµ½øÐмÆË㣬µÃµ½ÏàÓ¦µÄ¼ÆËã½á¹û£¬·µ»Ø¸øÓû§£¬Ò²¾ÍÊÇ˵£¬Ã¿ÐÐ×÷Ϊһ¸öÊäÈë²ÎÊý£¬¾¹ýº¯Êý¼ÆËãµÃµ½Ã¿ÐеļÆËã½á¹ûÊǵ¥Ðк¯Êý¡£
Ò»¡¢×Ö·ûº¯Êý
1¡¢×Ö·û´®´óСдת»»
(1)LOWER (strexp) ·µ»Ø×Ö·û´®,²¢½«ËùÓеÄ×Ö·ûСд
(2)UPPER (strexp) ·µ»Ø×Ö·û´®,²¢½«ËùÓеÄ× ......
MDSYS.CS_SRS ----- ¸Ã±í¶¨ÒåÁË×ø±êϵµÄÃû×Ö¼°ÆäÔÚOracle SpatialÖеÄIDÖµµÈ£¬ÕâÐ©×ø±êϵ¶¼ÊÇÓÉOpen-GIS¹«²¼µÄ¡£Ä¿Ç°¶¨ÒåµÄ×ø±êϵÒѾ´ïµ½1018¸ö¡£
MDSYS.SDO_ANGLE_UNITS ----- ¸Ã±í¶¨ÒåÁ˽Ƕȵ¥Î»£¬·Ö±ðÊÇDegree,Gon,Grad,Minute,Radian,Second
MDSYS.SDO_DIST_UNITS ----- ¸Ã±í¶¨ÒåÁ˾àÀëµÄµ¥Î»¡£±ÈÈçkm,m£¬¹²ÓÐ27ÖÖ¾à ......