oracleµÄRBO/CBOÓÅ»¯Æ÷
ÔÎĵØÖ·£ºhttp://tech.it168.com/db/o/2006-08-09/200608091935599.shtml
oracleµÄRBO/CBOÓÅ»¯Æ÷
OracleµÄÓÅ»¯Æ÷ÓÐÁ½ÖÖÓÅ»¯·½Ê½,¼´»ùÓÚ¹æÔòµÄÓÅ»¯·½Ê½(Rule-Based Optimization£¬¼ò³ÆÎªRBO)ºÍ»ùÓÚ´ú¼ÛµÄÓÅ»¯·½Ê½(Cost-Based Optimization£¬¼ò³ÆÎªCBO)£¬ÔÚOracle8¼°ÒÔºóµÄ°æ±¾,OracleÇ¿ÁÐÍÆ¼öÓÃCBOµÄ·½Ê½
RBO·½Ê½£ºÓÅ»¯Æ÷ÔÚ·ÖÎöSQLÓï¾äʱ,Ëù×ñѵÄÊÇOracleÄÚ²¿Ô¤¶¨µÄһЩ¹æÔò¡£±ÈÈçÎÒÃdz£¼ûµÄ£¬µ±Ò»¸öwhere×Ó¾äÖеÄÒ»ÁÐÓÐË÷Òýʱȥ×ßË÷Òý¡£
CBO·½Ê½£ºËüÊÇ¿´Óï¾äµÄ´ú¼Û(Cost),ÕâÀïµÄ´ú¼ÛÖ÷ÒªÖ¸CpuºÍÄÚ´æ¡£ÓÅ»¯Æ÷ÔÚÅжÏÊÇ·ñÓÃÕâÖÖ·½Ê½Ê±,Ö÷Òª²ÎÕÕµÄÊÇ±í¼°Ë÷ÒýµÄͳ¼ÆÐÅÏ¢¡£Í³¼ÆÐÅÏ¢¸ø³ö±íµÄ´óС¡¢ÓÐÉÙÐС¢Ã¿Ðеij¤¶ÈµÈÐÅÏ¢¡£ÕâЩͳ¼ÆÐÅÏ¢Æð³õÔÚ¿âÄÚÊÇûÓеģ¬ÊÇ×öanalyzeºó²Å³öÏֵģ¬ºÜ¶àµÄʱºî¹ýÆÚͳ¼ÆÐÅÏ¢»áÁîÓÅ»¯Æ÷×ö³öÒ»¸ö´íÎóµÄÖ´Ðмƻ®,ÒòЩӦ¼°Ê±¸üÐÂÕâЩÐÅÏ¢¡£
×¢Ò⣺×ßË÷Òý²»Ò»¶¨¾ÍÊÇÓŵ쬱ÈÈçÒ»¸ö±íÖ»ÓÐÁ½ÐÐÊý¾Ý£¬Ò»´ÎIO¾Í¿ÉÒÔÍê³ÉÈ«±íµÄ¼ìË÷,¶ø´Ëʱ×ßË÷ÒýʱÔòÐèÒªÁ½´ÎIO,Õâʱȫ±íɨÃè(full table scan)ÊÇ×îºÃ
ÓÅ»¯Ä£Ê½°üÀ¨Rule¡¢Choose¡¢First rows¡¢All rowsËÄÖÖ·½Ê½£º
Rule£º»ùÓÚ¹æÔòµÄ·½Ê½¡£
Choolse£ºÄ¬ÈϵÄÇé¿öÏÂOracleÓõıãÊÇÕâÖÖ·½Ê½¡£Ö¸µÄÊǵ±Ò»¸ö±í»ò»òË÷ÒýÓÐͳ¼ÆÐÅÏ¢£¬Ôò×ßCBOµÄ·½Ê½£¬Èç¹û±í»òË÷Òýûͳ¼ÆÐÅÏ¢£¬±íÓÖ²»ÊÇÌØ±ðµÄС£¬¶øÇÒÏàÓ¦µÄÁÐÓÐË÷Òýʱ£¬ÄÇô¾Í×ßË÷Òý£¬×ßRBOµÄ·½Ê½¡£
First Rows£ºËüÓëChoose·½Ê½ÊÇÀàËÆµÄ£¬Ëù²»Í¬µÄÊǵ±Ò»¸ö±íÓÐͳ¼ÆÐÅϢʱ£¬Ëü½«ÊÇÒÔ×î¿ìµÄ·½Ê½·µ»Ø²éѯµÄ×îÏȵļ¸ÐУ¬´Ó×ÜÌåÉϼõÉÙÁËÏìӦʱ¼ä¡£
All Rows:Ò²¾ÍÊÇÎÒÃÇËù˵µÄCostµÄ·½Ê½£¬µ±Ò»¸ö±íÓÐͳ¼ÆÐÅϢʱ£¬Ëü½«ÒÔ×î¿ìµÄ·½Ê½·µ»Ø±íµÄËùÓеÄÐУ¬´Ó×ÜÌåÉÏÌá¸ß²éѯµÄÍÌÍÂÁ¿¡£Ã»ÓÐͳ¼ÆÐÅÏ¢Ôò×ßRBOµÄ·½Ê½¡£
É趨ѡÓÃÄÄÖÖÓÅ»¯Ä£Ê½£º
A¡¢Instance¼¶±
Ïà¹ØÎĵµ£º
OracleÌṩÁË·ÖÇø¼¼ÊõÒÔÖ§³ÖVLDB(Very Large DataBase)¡£·ÖÇø±íͨ¹ý¶Ô·ÖÇøÁеÄÅжϣ¬°Ñ·ÖÇøÁв»Í¬µÄ¼Ç¼£¬·Åµ½²»Í¬µÄ·ÖÇøÖС£·ÖÇøÍêÈ«¶ÔÓ¦ÓÃ͸Ã÷¡£
OracleµÄ·ÖÇø±í¿ÉÒÔ°üÀ¨¶à¸ö·ÖÇø£¬Ã¿¸ö·ÖÇø¶¼ÊÇÒ»¸ö¶ÀÁ¢µÄ¶Î£¨SEGMENT£©£¬¿ÉÒÔ´æ·Åµ½²»Í¬µÄ±í¿Õ¼äÖС£²éѯʱ¿ÉÒÔͨ¹ý²éѯ±íÀ´·ÃÎʸ÷¸ö·ÖÇøÖеÄÊý¾Ý£¬Ò²¿ÉÒÔͨ¹ýÔÚ²éѯ ......
ÈçºÎ½â¾öORA-00054×ÊÔ´Õý棬ҪÇóÖ¸¶¨NOWAIT£¿
²éÔÄ´íÎó´úÂëÖ¸ÄϺóÓÐÈçÏÂÌáʾ£º
ORA-00054 resource busy and acquire with NOWAIT specified
Cause: The NOWAIT keyword forced a return to the command prompt because a resource was unavailable for a LOCK TABLE or SELECT FOR UPDATE command.
Action: Tr ......
# LISTENER.ORA Network Configuration File: /opt/oracle/product/9.2/network/admin/listener.ora
# Generated by Oracle configuration tools.
ORA92 =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS ......
oracleÊý¾Ý¿âÖÐsql»ù´¡
×÷ÕߣºØýÃû תÌù×Ô£º±¾Õ¾Ô´´ ä¯ÀÀ´ÎÊý£º21 ÎÄÕ¼È룺admin
Ò»¡¢¹ØÏµÊý¾Ý¿âµÄһЩ¸ÅÄî
¡¡¡¡
¡¡¡¡1¡¢Ö÷¼üµÄÖµÒ»°ã²»¿ÉÒԸıä
¡¡¡¡
¡¡¡¡2¡¢Íâ¼ü£ºÖ¸ÏòÁíÒ»¸ö±í»ò±¾±íµÄÖ÷¼ü»òΨһ¼üµÄ×ֶΡ£Íâ¼üµÄÖµÒ»¶¨ÒªºÍijһÖ÷¼üÏàͬ ......
OracleÔÚÈÕÆÚʹÓÃÉÏÔÊÐí¼«´óµÄÁé»îÐÔ¡£ÓÉÓÚ¿ÉÒÔÔÚÈÕÆÚ×ֶδ洢ʱ¼äºÍÈÕÆÚ£¬´Ó¶øÓк¯Êý¿ÉÒÔ¼ÈÒýÓÃÈÕÆÚÓÖÒýÓÃʱ¼ä¡£
Oracle ËùÌṩµÄһЩÈÕÆÚº¯ÊýÈçÏÂËùʾ¡£
1. SYSDATE
·µ»Øµ±Ç°µÄÈÕÆÚºÍʱ¼ä¡£
ʾÀý
SELECT sysdate from dual;
SYSDATE
----------
05-3ÔÂ -03
2. ADD_MONTHS(d, no_of_month)
µ±Ç°ÈÕÆÚ"m"ºóÍÆ"no_o ......