²é¿´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·½·¨¡£
Cost ÏûºÄԽС ЧÂÊÔ½¸ß.
×¢Ò⣺PL/SQL Dev¹¤¾ßµÄCommand windowÖв»Ö§³Öset autotrance onµÄÃüÁî¡£»¹ÓÐʹÓù¤¾ß·½·¨²é¿´¼Æ»®¿´µ½µÄÐÅÏ¢²»È«£¬ÓÐЩʱºòÎÒÃÇÐèÒªsqlplusµÄÖ§³Ö¡£
¶þ¡¢Í¨¹ýsqlplus
1¡¢Ò»°ãÇé¿ö¶¼ÊDZ¾»úÁ´½ÓÔ¶³Ì·þÎñÆ÷£¬ËùÒÔÃüÁîÈçÏ£º
sqlplus user/pwd@serviceName
´Ë´¦µÄserviceNameΪtnsnames.oraÖж¨ÒåµÄÃüÃû¿Õ¼ä¡£
2¡¢Ö´ÐÐset autotrace on£¬È»ºóÖ´ÐÐsqlÓï¾ä£¬»áÁгöÒÔÏÂÐÅÏ¢£º
¡£¡£¡££¨Ê¡ÂÔһЩÐÅÏ¢£©
ͳ¼ÆÐÅÏ¢
----------------------------------------------------------
1 recursive calls £¨¹éµ÷ÓôÎÊý£©
0 db block gets
2 consistent gets
0 physical reads £¨ÎïÀí¶Á——Ö´ÐÐSQLµÄ¹ý³ÌÖУ¬´ÓÓ²ÅÌÉ϶ÁÈ¡µÄÊý¾Ý¿é¸öÊý£©
0 redo size (ÖØ×öÊý——Ö´ÐÐSQLµÄ¹ý³ÌÖУ¬²úÉúµÄÖØ×öÈÕÖ¾µÄ´óС)
358 bytes sent via SQL*Net to client
366 bytes received via SQL*Net from client
1 SQL*Net roundtrips to/from client
&nb
Ïà¹ØÎĵµ£º
¹ý³Ì¡¢º¯Êý
create or replace procedure p1
is
empname emp.ename%type;
begin
select ename into empname from emp where empno=7788;
dbms_output.put_line(empname);
end;
SQL> ed
SQL> /
Procedure created
SQL> exec p1;
......
´¥·¢Æ÷
q ´¥·¢Æ÷Êǵ±Ìض¨Ê¼þ³öÏÖʱ×Ô¶¯Ö´ÐеĴ洢¹ý³Ì
q ÌØ¶¨Ê¼þ¿ÉÒÔÊÇÖ´ÐиüеÄDMLÓï¾äºÍDDLÓï¾ä
q ´¥·¢Æ÷²»Äܱ»ÏÔʽµ÷ÓÃ
q ´¥·¢Æ÷µÄ¹¦ÄÜ£º
q ......
¸ãoracle¶¼»á¾³£Åöµ½rowid£¬±¾ÎÄÊDZÊÕ߸ù¾ÝÍøÉϸ÷λµÄÎÄÕ£¬¼ÓÉÏ×Ô¼ºÑ§Ï°ÖеÄÌå»á£¬×Ü½á¶ø³É¡£
Ò».rowid¼ò½é
rowid¾ÍÊÇΨһ±êÖ¾¼Ç¼ÎïÀíλÖõÄÒ»¸öid£¬ÔÚoracle 8°æ±¾ÒÔǰ£¬rowidÓÉfile#+block#+row#×é³É£¬Õ¼ÓÃ6¸öbytesµÄ¿Õ¼ä£¬10 bit µÄ file# ......
ÎÒÁгöÎÒÈ«²¿µÄ×ö·¨£º
table a ÓÐid1, str1, str2, str3
¿ªÊ¼µÄpkÊÇid1, str1, str2
Ï£Íû¸Ä³Éid1, str1, str3
--ÎÊÌâ
СµÜÏÈÓÐÈçÏÂÎÊÌ⣺
Ò»¸ö±íÔÀ´µÄPKÊÇ id1+str1+str2 ÁÐ
ÏÈÐ޸ijÉid1+str1+str3ÁÐ
¶øÕâÈýÁÐÏÖÔÚµ±Ç°Êý¾Ý¿âµÄÊý¾ÝÓÐÖØ¸´µÄÇé¿ö£¬ СµÜÏÖÔÚÓÃsql:
ALTER table a a ......
×î½ü·¢ÏÖÒ»¸öÎÊÌ⣬һ¸ö9iÅÜÔÚredhat5µÄ£¬¾ÓÈ» select sysdate from dual ³öÀ´µÄʱ¼äºÍʵ¼Êʱ¼ä²îÁ˼¸·ÖÖÓ£¬ÒòΪ»ùÓÚÕâ¸öoracleµÄϵͳʱ¼äÕýÈ·ÐÔ»¹ÊÇÓеãÒªÇóµÄ¡£ËùÒÔÖ»ÄÜ #date -s 2010-2-10 8:55:00 ÁË£¬ÔÙ#clock -w дÈëCOMS ×¢ÒâÐÞ¸Äʱ¼äµÃÔÚrootÏ¡£
ÔÚϵͳÆô¶¯Ê±£¬Linux²Ù×÷ϵͳ½«Ê±¼ä´ÓCMOSÖжÁµ½ÏµÍ³Ê ......