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

¹ØÓÚoracle mutexºÍlatchµÄÎÊÌâ

¹ØÓÚlatchºÍmutexµÄÎÊÌâ
from:http://www.itpub.net/thread-1004815-1-1.html
A:
latchÊÇãÅËø£¬ÊÇÒ»ÖÖ´®Ðл¯»úÖÆ£¬ÓÃÀ´±£»¤SGAÖеÄÄÚ´æ½á¹¹¡£
mutexÊÇʲô£¬Ò²ÊÇÒ»ÖÖ´®Ðл¯»úÖÆ£¬ÊÇ»¥³âËø£¿
¸öÈ˶ÔmutexûÓÐʲô¸ÅÄî¡£Õâ¸öÊÇ10GÐÂÒý½øµÄ£¿9IºÃÏñûÓа¡¡£
ÄÄλÃ÷°×ÈË£¬¸ø°ïæÏêϸ½âÊÍÏÂmutex£¬×îºÃ»¹ÄܺÍlatch ×öϱȽϡ£
лл¡£
B:
BTW, things get more fun in 10.2, you can pin cursors without getting library cache pin latch, using KGX mutexes. Mutexes are new in 10.2 and they enable shared access to objects in somewhat similar manner to shared latche; every successful get of a particular mutex will increment its value and a release will decrement. When the count is zero, no one has the mutex and it is safe to get it in exclusive mode. However, they are more fine-grained than kgl latches and provide a better wait mechanism, as far as I understand.
So if your environment supports atomic compare and swap operation (such as CMPXCHG on Intel), you might get away without cursor_space_for_time setting for ultrahigh execution rates. Otherwise the atomic mutex operations would be achieved using the new KGX latches.
At least on my laptop this feature isn't enabled by default (from an OracleWorld paper I remember that it should become default in 10.2.0.2), but so far you can experiment with it if you set _kks_use_mutex_pin = true and bounce the instance (mutex structures will be stored in the shared pool, so you might need to increase shared pool size).
There are also X$MUTEX_SLEEP and X$MUTEX_SLEEP_HISTORY fixed tables that can show some interesting information if you generate some mutex waits into them.
Now, I don't suggest for a moment that you have to understand this response. It is at an extremely deep technical level, and the practical applications of such understanding are probably few and far between. My point, though, is that you must take the time to study and understand Oracle internal operations if you are to have success in Oracle performance optimization. There are no shortc


Ïà¹ØÎĵµ£º

ORACLE±¸·Ý²ßÂÔ(ORACLE BACKUP STRATEGY)

ORACLE±¸·Ý²ßÂÔ(ORACLE BACKUP STRATEGY)
2007Äê11ÔÂ02ÈÕ ÐÇÆÚÎå 16:03
¸ÅÒª
1¡¢Á˽âʲôÊDZ¸·Ý
2¡¢Á˽ⱸ·ÝµÄÖØÒªÐÔ
3¡¢Àí½âÊý¾Ý¿âµÄÁ½ÖÖÔËÐз½Ê½
4¡¢Àí½â²»Í¬µÄ±¸·Ý·½Ê½¼°ÆäÇø±ð
5¡¢Á˽âÕýÈ·µÄ±¸·Ý²ßÂÔ¼°ÆäºÃ´¦
  
Ò»¡¢Á˽ⱸ·ÝµÄÖØÒªÐÔ
¿ÉÒÔ˵£¬´Ó¼ÆËã»úϵͳ³öÊÀµÄÄÇÌìÆ𣬾ÍÓÐÁ˱¸·ÝÕâ¸ö¸ÅÄ ......

Oracle±í¿Õ¼ä¹ÜÀí

extent--×îС¿Õ¼ä·ÖÅ䵥λ --tablespace management
block --×îСi/oµ¥Î»      --segment    management
create tablespace james
datafile '/export/home/oracle/oradata/james.dbf'
size 100M ¡¡¡¡¡¡¡¡¡¡¡¡--³õʼµÄÎļþ´óС¡¡
autoextend On¡¡¡¡¡¡¡¡ --×Ô¶¯Ôö³¤
next 10M¡ ......

javaÊý¾Ý¿â¿ª·¢ÖÐÁ½ÖÖ×¢²áoracleÇý¶¯µÄ·½Ê½

Ò»¡¢ÀûÓÃClass.forNameº¯Êý£¨ÓÃjava¿ª·¢B/SģʽµÄ³ÌÐò£© 1.´úÂëÈçÏ£º //×¢²áÇý¶¯³ÌÐò
public boolean connectDb() {
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
return true;
} catch (ClassNotFoundException e) {
System.out.println(e);
return false;
}
} ......

oracle wait event:reliable message

½ñÌì¿Í»§µÄÒ»Ì×RAC»·¾³³öÏÖÎÊÌâ
Ë«½ÚµãRAC»·¾³ÖУ¬Ò»¸ö½ÚµãÒòΪËø¾ºÕù¶ø¹ÒÆð£¬shutdownÖ®ºóÎÞ·¨Æô¶¯¡£
¹ÊÕϳöÏÖʱÎÒÕýÔÚ·ÉÏ£¬´Ò´Ò»Øµ½¼ÒÖУ¬´¦Àí¹ÊÕÏ¡£
½â¾öÖ®ºó²éÕÒ¹ÊÕÏÔ­Òò¡£
¼ì²éµ±Ê±µÄAWRÐÅÏ¢·¢ÏÖTop 5 Timed EventsÏÔʾÈçÏÂÐÅÏ¢£º
Top 5 Timed Events         &nb ......

oracleʵÏÖºº×Ö°´ÕÕÆ´Òô¡¢±Ê»­ºÍ²¿Ê×ÅÅÐò

oracleʵÏÖºº×Ö°´ÕÕÆ´Òô¡¢±Ê»­ºÍ²¿Ê×ÅÅÐò
ÕÒÁËÏà¹ØµÄһЩ×ÊÁÏ£¬¶¼ËµµÄ²»ÊǺÜÇå³þ£¬×Ô¼ºÒ²Ñо¿ÁËÏ£¬ÖÕÓÚ¸ãÃ÷°×ÁË£¬Ï£Íû¶Ô´ó¼ÒÓаïÖú¡£
ÐèҪ˵Ã÷µÄÊÇÏÂÃæµÄ·½·¨ÐèÒªORACLE9iºÍÒÔÉϵİ汾²ÅÖ§³Ö¡£
Oracle9i֮ǰ£¬ÖÐÎÄÊÇ°´ÕÕ¶þ½øÖƱàÂë½øÐÐÅÅÐòµÄ¡£
ÔÚoracle9iÖÐÐÂÔöÁË°´ÕÕÆ´Òô¡¢²¿Êס¢±Ê»­ÅÅÐò¹¦ÄÜ¡£ÉèÖÃNLS_SORTÖµ
......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ