Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

²é¿´OracleÖ´Ðмƻ®µÄ¼¸ÖÖ·½·¨

²é¿´OracleÖ´Ðмƻ®µÄ¼¸ÖÖ·½·¨
Ò»¡¢Í¨¹ýPL/SQL Dev¹¤¾ß
    1¡¢Ö±½ÓFile->New->Explain Plan Window£¬ÔÚ´°¿ÚÖÐÖ´ÐÐsql¿ÉÒԲ鿴¼Æ»®½á¹û¡£ÆäÖУ¬Cost±íʾcpuµÄÏûºÄ£¬µ¥Î»Îªn%£¬Cardinality±íʾִÐеÄÐÐÊý£¬µÈ¼ÛRows¡£
    2¡¢ÏÈÖ´ÐÐ EXPLAIN PLAN FOR   select * from tableA where paraA=1£¬ÔÙ select * from table(DBMS_XPLAN.DISPLAY)±ã¿ÉÒÔ¿´µ½oracleµÄÖ´Ðмƻ®ÁË£¬¿´µ½µÄ½á¹ûºÍ1ÖеÄÒ»Ñù£¬ËùÒÔʹÓù¤¾ßµÄʱºòÍÆ¼öʹÓÃ1·½·¨¡£
×¢Ò⣺PL/SQL Dev¹¤¾ßµÄCommand windowÖв»Ö§³Öset autotrance onµÄÃüÁî¡£»¹ÓÐʹÓù¤¾ß·½·¨²é¿´¼Æ»®¿´µ½µÄÐÅÏ¢²»È«£¬ÓÐЩʱºòÎÒÃÇÐèÒªsqlplusµÄÖ§³Ö¡£
 
¶þ¡¢Í¨¹ýsqlplus
1£®×î¼òµ¥µÄ°ì·¨
Sql> set autotrace on
Sql> select * from dual;
¡¡¡¡Ö´ÐÐÍêÓï¾äºó£¬»áÏÔʾexplain plan Óë ͳ¼ÆÐÅÏ¢¡£
¡¡¡¡Õâ¸öÓï¾äµÄÓŵã¾ÍÊÇËüµÄȱµã£¬ÕâÑùÔÚÓø÷½·¨²é¿´Ö´ÐÐʱ¼ä½Ï³¤µÄsqlÓï¾äʱ£¬ÐèÒªµÈ´ý¸ÃÓï¾äÖ´Ðгɹ¦ºó£¬²Å·µ»ØÖ´Ðмƻ®£¬Ê¹ÓÅ»¯µÄÖÜÆÚ´ó´óÔö³¤¡£Èç¹û²»ÏëÖ´ÐÐÓï¾ä¶øÖ»ÊÇÏëµÃµ½Ö´Ðмƻ®¿ÉÒÔ²ÉÓãº
Sql> set autotrace traceonly
ÕâÑù£¬¾ÍÖ»»áÁгöÖ´Ðмƻ®£¬¶ø²»»áÕæÕýµÄÖ´ÐÐÓï¾ä£¬´ó´ó¼õÉÙÁËÓÅ»¯Ê±¼ä¡£ËäȻҲÁгöÁËͳ¼ÆÐÅÏ¢£¬µ«ÊÇÒòΪûÓÐÖ´ÐÐÓï¾ä£¬ËùÒÔ¸Ãͳ¼ÆÐÅϢûÓÐÓô¦£¬Èç¹ûÖ´ÐиÃÓï¾äʱÓöµ½´íÎ󣬽â¾ö·½·¨Îª£º
(1£©ÔÚÒª·ÖÎöµÄÓû§Ï£º
Sqlplus > @ ?
dbmsadminutlxplan.sql
(2) ÓÃsysÓû§µÇ½
Sqlplus > @ ?sqlplusadminplustrce.sql
Sqlplus > grant plustrace to user_name;
- - user_nameÊÇÉÏÃæËù˵µÄ·ÖÎöÓû§
 
¡¡2£®ÓÃexplain planÃüÁî
(1) sqlplus > explain plan for select * from testdb.myuser
(2) sqlplus > select * from table(dbms_xplan.display);
¡¡¡¡ÉÏÃæÕâ2ÖÖ·½·¨Ö»ÄÜΪÔÚ±¾»á»°ÖÐÕýÔÚÔËÐеÄÓï¾ä²úÉúÖ´Ðмƻ®£¬¼´ÎÒÃÇÐèÒªÒѾ­ÖªµÀÁËÄÄÌõÓï¾äÔËÐеÄЧÂʺܲÎÒÃÇÊÇÓÐÄ¿µÄÖ»¶ÔÕâÌõSQLÓï¾äÈ¥ÓÅ»¯¡£Æäʵ£¬ÔںܶàÇé¿öÏ£¬ÎÒÃÇÖ»»áÌýÒ»¸ö¿Í»§±§Ô¹ËµÏÖÔÚϵͳÔËÐкÜÂý£¬¶øÎÒÃDz»ÖªµÀÊÇÄĸöSQLÒýÆðµÄ¡£´ËʱÓÐÐí¶àÏֳɵÄÓï¾ä¿ÉÒÔÕÒ³öºÄ·Ñ×ÊÔ´±È½Ï¶àµÄÓï¾ä£¬È磺
SELECT ADDRESS, substr(SQL_TEXT,1,20) Text, buffer_gets, executions,
buffer_gets/executions AVG  from  v$sqlarea
WHERE executions>0 AND buffer_gets > 100000   ORDER BY 5;
ADDRESS  &n


Ïà¹ØÎĵµ£º

Oracle°´×Ö·û½ØÈ¡×Ö·û´®º¯Êý

ÊäÈë²ÎÊý£ºstr ——Òª½ØÈ¡µÄ×Ö·û´®,  ch——Òª²éÕÒµÄ×Ö·û´®
½ØÈ¡ch֮ǰ£¨²»°üÀ¨ch£©µÄ×Ö·û´®£º substr(str, 0, instr(str, ch) - 1)
½ØÈ¡chÖ®ºó£¨²»°üÀ¨ch£©µÄ×Ö·û´®£º substr(str, , instr(str, ch) + 1, length(str)) ......

Oracle waits event:DB File Sequential Read

The DB File Sequential Read wait event generally indicates a single block read (an index read,
for example). A large number could indicate poor joining orders of tables or unselective indexing.
This number will certainly be large (normally) for a high-transaction, well-tuned system. You ......

oracle raw devices

1.LVM:
[root@vmfs ~]# pvdisplay
  --- Physical volume ---
  PV Name               /dev/sdg
  VG Name               db_v4
  PV Size  ......

Oracle wait problems and potential solutions

Wait Problem Potential Fix Sequential Read Indicates many index reads—tune the code (especially joins) Scattered Read Indicates many full table scans—tune the code; cache small tables ......

Óà Navicat for Oracle ¹ÜÀí Oracle10g/11g Êý¾Ý¿â


    Navicat for xxx ÊÇÒ»¸öÓÅÐãµÄÊý¾Ý¿â¹ÜÀí¿Í»§¶Ë£¬ÓÐ MySQL¡¢Oracle µÈ°æ±¾¡£½¨Òé´ó¼Ò×îºÃÓà Enterprise °æ±¾£¬¹¦ÄÜÈ«ÃæÒ»Ð©£¬µ«½ÏÖ®ÓÚÃâ·ÑµÄ Lite °æ£¬ÆóÒµ°æ¿ÉÊÇÒª»¨Òø×ÓÂòµÄ¡£
    °²×° Navicat for Oracle ºó£¬Ê×ÏÈÐèÒª½¨Ò»¸ö“Á¬½Ó”£¬×÷Ϊij¸ö¹ÜÀíÈÎÎñµÄ±êʶ£¬ÒòΪ×÷Î ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ