Oracle Hang Analysis
Author: rainnyzhong
Date:2010-1-15
1£® Ö¢×´ÃèÊö£º
FALB12´ÓEXCEL IMPORT DATAµ½DB£¬Ô¤¼ÆÊÂÎñ»áÔËÐÐ1¸ö¶àСʱ£¬ÔÚ¿ªÊ¼²Ù×÷ºó40·ÖÖÓ×óÓÒ£¬ORACLE¹ÒËÀ£¬ÈκÎÓû§¶¼²»¿ÉÒÔÔٵǽÁË¡£
2£® ·ÖÎö
£¨1£© ÏÂÃæÊǹÒËÀʱOSµÄ×ÊÔ´×´¿ö£º
09:37:54 up 73 days, 23:31, 1 user, load average: 0.11, 0.24, 0.18
194 processes: 191 sleeping, 3 running, 0 zombie, 0 stopped
CPU states: cpu user nice system irq softirq iowait idle
total 6.7% 0.0% 0.3% 0.3% 0.0% 1.9% 90.4%
Mem: 2186616k av, 2168780k used, 17836k free, 0k shrd, 154716k buff
1633584k actv, 498176k in_d, 64108k in_c
Swap: 2040244k av, 18624k used, 2021620k free 2283068k cached
´ÓtopÃüÁîµÄÊä³öÖУ¬ÎÒÃÇ¿ÉÒÔ¿´³ö£¬MEMORYʹÓü¸ºõÒѾ´ïµ½100%¡£
£¨2£© ÏÂÃæÊÇORACLE±¨¾¯ÈÕÖ¾µÄÄÚÈÝ£º
Thu Jan 14 16:22:44 2010
Errors in file /opt/oracle9i/admin/ORA16G/udump/ora16g_ora_29758.trc:
ORA-00604: error occurred at recursive SQL level 4
ORA-04021: timeout occurred while waiting to lock object
ORA-00604: error occurred at recursive SQL level 4
ORA-04021: timeout occurred while waiting to lock object
ORA-00604: error occurred at recursive SQL level 3
ORA-04021: timeout occurred while waiting to lock object
Thu Jan 14 16:26:06 2010
¿ÉÒÔ¿´³ö£¬ÔÚ½âÎöµÝ¹éSQLʱ³öÎÊÌâÁË£¬ÔڵȴýijÖÖËøÊ±ÑÓʱÁË¡£
£¨3£© ÏÂÃæÊǸú×ÙÎļþora16g_ora_29758.trcµÄ²¿·ÖÄÚÈÝ
*** 2010-01-14 16:22:44.412
================
Ïà¹ØÎĵµ£º
oracle±í¿Õ¼ä²Ù×÷Ïê½â
1
2
3×÷Õߣº À´Ô´£º ¸üÐÂÈÕÆÚ£º2006-01-04
5
6
7½¨Á¢±í¿Õ¼ä
8
9CREATE TABLESPACE data01
10DATAFILE '/ora ......
http://fangrn.javaeye.com/blog/514448
³õʶ oracle ÖеÄË÷Òý×éÖ¯±í
Ë÷Òý×éÖ¯±í£¨ IOT £©ÓÐÒ»ÖÖÀà B Ê÷µÄ´æ´¢×éÖ¯·½·¨¡£ÆÕͨµÄ¶Ñ×éÖ¯±íÊÇÒÔÒ»ÖÖÎÞÐòµÄ¼¯ºÏ´æ´¢¡£¶ø IOT ÖеÄÊý¾ÝÊǰ´Ö÷¼üÓÐÐòµÄ´æ´¢ÔÚ B Ê÷Ë÷Òý½á¹¹ÖС£ÓëÒ»°ã B Ê÷Ë÷Òý²»Í¬µÄµÄÊÇ£¬ÔÚ IOT ÖÐÿ¸öÒ¶½áµã¼´ÓÐÿÐеÄÖ÷¼üÁÐÖµ£¬ÓÖÓÐÄÇЩ· ......
Oracle ÄÚ´æ½á¹¹ÈçÏÂͼ£º
1£ºÊµÀý£¨Instance£©
ÔÚÒ»¸öÖУ¬Ã¿Ò»¸öÔËÐеÄOracleÊý¾Ý¿â¶¼ÓëÒ»¸öÊý¾Ý¿âʵÀýÏàÁªÏµ£¬ÊµÀýÊÇÎÒÃÇ
·ÃÎÊÊý¾Ý¿âµÄÊֶΡ£
ʵÀýÔÚ²Ù×÷ϵͳÖÐÓÃORACLE_SIDÀ´±êʶ£¬ÔÚOracleÖÐÓòÎÊýINSTANCE_NAMEÀ´±êʶ£¬
Ëü ......
Oracle Îï¼þµÄÃüÃûÏÞÖÆ
ÈκÎÎï¼þµÄÃû稱²»µÃ³¬過 30 λԪ(Bytes)
Oracle µÄ dummy query 寫·¨
SELECT SYSDATE from dual
Oracle 選È¡²¿·Ö資Áϵķ½·¨
SELECT * from table WHERE ROWNUM<10; /* È¡³öǰ 10 筆 */
實現 Oracle ÉϵķÖ頁顯ʾ [¾«華] ......
ÏÈ¿´ÏÂÃæµÄÀý×Ó:oracleÖÐÁ½¸öϵͳ±í.emp,dept.
example:
1:not exists(not in)
not exists:
ÕâÌõÓï¾ä·µ»Øselect * from scott.dept d where e.deptno=d.deptno and d.deptno=10Ìõ¼þÂú×ãµÄ½á¹û¼¯.Ò²¾ÍÊÇ˵,
·µ»ØµÄ½á¹û¼¯Öв»´æÔÚd.deptno=10½á¹û¼¯µÄ¼Ç¼,¼´emp±íÖÐûÓÐdept±íÖÐd.deptno=10µÄ¼Ç¼.
SQL& ......