ï»??xml version="1.0" encoding="utf-8" standalone="yes"?>成人一区二区视频,欧美极品aⅴ影院,精品国产免费久久久久久尖叫http://www.aygfsteel.com/1948asd/category/39007.htmlzh-cnTue, 12 May 2009 14:17:32 GMTTue, 12 May 2009 14:17:32 GMT60æ•°æ®åº“å­¦ä¹?/title><link>http://www.aygfsteel.com/1948asd/archive/2009/05/11/270068.html</link><dc:creator>我是èœé¸Ÿ</dc:creator><author>我是èœé¸Ÿ</author><pubDate>Mon, 11 May 2009 08:37:00 GMT</pubDate><guid>http://www.aygfsteel.com/1948asd/archive/2009/05/11/270068.html</guid><wfw:comment>http://www.aygfsteel.com/1948asd/comments/270068.html</wfw:comment><comments>http://www.aygfsteel.com/1948asd/archive/2009/05/11/270068.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.aygfsteel.com/1948asd/comments/commentRss/270068.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/1948asd/services/trackbacks/270068.html</trackback:ping><description><![CDATA[ <br />æ•°æ®½Ž¡ç†æŠ€æœ¯ç»åŽ†äº†äººå·¥½Ž¡ç†ã€æ–‡ä»¶ç³»¾lŸã€æ•°æ®åº“和高¾U§æ•°æ®åº“技术等四个阶段ã€?br />æ•°æ®åº“ç³»¾lŸæ˜¯åœ¨æ–‡ä»¶ç³»¾lŸçš„基础上å‘展而æˆçš„ï¼ŒåŒæ—¶åˆå…‹æœäº†æ–‡äšg¾pÈ»Ÿçš„ä¸‰ä¸ªç¼ºé™øP¼šæ•°æ®çš„冗余ã€ä¸ä¸€è‡´æ€§å’Œè”系弱ã€?br /><br />æ•°æ®æ¨¡åž‹æ˜¯å¯¹çŽ°å®žä¸–ç•Œ˜q›è¡ŒæŠ½è±¡çš„工典P¼Œç”¨äºŽæè¿°çŽ°å®žä¸–ç•Œçš„æ•°æ®ã€æ•°æ®è”¾p…R€æ•°æ®è¯­ä¹‰å’Œæ•°æ®¾U¦æŸ½{‰æ–¹é¢å†…å®V€‚æ•°æ®æ¨¡åž‹åˆ†æˆæ¦‚忉|¨¡åž‹å’Œ¾l“构模型两大¾c…R€‚å‰è€…的代表是实体蔾pÀL¨¡åž‹ï¼ŒåŽè€…的代表是层‹Æ¡ã€ç½‘状ã€å…³¾pÕd’Œé¢å‘对象模型。关¾pÀL¨¡åž‹æ˜¯å½“今的主‹¹æ¨¡åž‹ï¼Œé¢å‘对象模型是今åŽå‘展的方å‘ã€?br /><br />æ•°æ®åº“是存储在一起集中管ç†çš„相关数æ®çš„集åˆã€‚æ•°æ®åº“的体¾pÈ»“构是å¯ÒŽ•°æ®çš„三个抽象¾U§åˆ«ã€‚它把数æ®çš„具体¾l„织留给DBMSåŽÕdšåQŒç”¨æˆ·åªéœ€æŠ½è±¡åœ°å¤„ç†é€»è¾‘æ•°æ®åQŒè€Œä¸å¿…关心数æ®åœ¨è®¡ç®—æœÞZ¸­çš„存储,å‡è½»äº†ç”¨æˆ·ä‹É用系¾lŸçš„负担。由于三¾U§ç»“构之间往往差别很大åQŒå­˜åœ¨ç€ä¸¤çñ”映象åQŒå› æ­¤ä‹ÉDBSå…ähœ‰è¾ƒé«˜çš„æ•°æ®ç‹¬ç«‹æ€§ï¼šç‰©ç†æ•°æ®ç‹¬ç«‹æ€§å’Œé€»è¾‘æ•°æ®ç‹¬ç«‹æ€§ã€?br /><br />æ•°æ®ç‹¬ç«‹æ€§æ˜¯æŒ‡åœ¨æŸä¸ªå±‚次上修æ”ÒŽ¨¡å¼è€Œä¸å½±å“较高一层模å¼çš„能力ã€?br />DBMS是ä½äºŽç”¨æˆ·ä¸ŽOS之间的一层数æ®ç®¡ç†èÊY件。数æ®åº“语言分æˆDDLå’ŒDML两类。DBMS主è¦ç”±æŸ¥è¯¢å¤„ç†å™¨å’Œå­˜å‚¨ç®¡ç†å™¨ä¸¤å¤§éƒ¨åˆ†¾l„æˆã€?br />DBS是包å«DBå’ŒDBMS的计½Ž—机¾pÈ»Ÿã€‚DBS的全局¾l“构体现了DBS的模å—功能结构ã€?br /><br /><strong>æ•°æ®åº“三¾U§ä½“¾pÈ»“构:<br /><img height="576" alt="fsdafsd.jpg" src="http://www.aygfsteel.com/images/blogjava_net/1948asd/fsdafsd.jpg" width="702" border="0" /><br /><img height="1" src="/WebResource.axd?d=pLXXeGbWF7eXU8SMs2-GFZvUWY2JNH05dFx5YzJhGUYAYJAFEaTEq36NAhTPy7_KekvzDFwt8wvQWdByvJIGWdEq6x2KpKD80&t=633043282320000000" width="1" /><br /><br /></strong><br /><strong>æ•°æ®åº“体¾pÈ»“构五è¦ç´ :</strong><br />1ã€æ¦‚忉|¨¡å¼æ˜¯æ•°æ®åº“中全部数æ®çš„æ•´ä½“逻辑¾l“构的æ˜q°ã€?br />2ã€å¤–æ¨¡å¼æ˜¯ç”¨æˆ·å†™æ•°æ®åº“ç³»¾lŸçš„æŽ¥å£åQŒæ˜¯ç”¨æˆ·ç”¨åˆ°é‚£éƒ¨åˆ†æ•°æ®çš„æè¿°ã€?br />3ã€å†…æ¨¡å¼æ˜¯æ•°æ®åº“在物ç†å­˜å‚¨æ–¹é¢çš„æè¿°åQŒå®šä¹‰å†…部记录类型ã€çƒ¦å¼•和文äšg的组¾l‡æ–¹å¼ï¼Œä»¥åŠæ•°æ®æŽ§åˆ¶æ–šw¢çš„细节ã€?br />4ã€æ¨¡å¼ï¼å†…æ¨¡å¼æ˜ è±¡å­˜åœ¨äºŽæ¦‚念¾U§å’Œå†…部¾U§ä¹‹é—ß_¼Œç”¨äºŽå®šä¹‰æ¦‚念模å¼å’Œå†…模å¼ä¹‹é—´çš„对应性ã€?br />5ã€å¤–模å¼åQæ¨¡å¼æ˜ è±¡å­˜åœ¨äºŽå¤–部¾U§å’Œæ¦‚念¾U§ä¹‹é—ß_¼Œç”¨äºŽå®šä¹‰å¤–模å¼å’Œæ¦‚念模å¼ä¹‹é—´çš„对应性ã€?br /><br /><strong> DBMS的模å—组æˆï¼š<br /></strong><br />查询处ç†å™¨æœ‰å››ä¸ªä¸»è¦æˆåˆ†åQšDDL¾~–译器,DML¾~–译器,嵌入å¼DML的预¾~–è¯‘å™¨åŠæŸ¥è¯¢˜q行核心½E‹åºã€?br />存储½Ž¡ç†å™¨æœ‰å››ä¸ªä¸»è¦æˆåˆ†åQšæƒé™å’Œå®Œæ•´æ€§ç®¡ç†å™¨åQŒäº‹åŠ¡ç®¡ç†å™¨åQŒæ–‡ä»¶ç®¡ç†å™¨åŠç¼“冲区½Ž¡ç†å™¨ã€?br /><br /><strong>DBS的全局¾l“æž„åQ?br /><br /><img height="1" src="/WebResource.axd?d=pLXXeGbWF7eXU8SMs2-GFZvUWY2JNH05dFx5YzJhGUYAYJAFEaTEq36NAhTPy7_KekvzDFwt8wvQWdByvJIGWdEq6x2KpKD80&t=633043282320000000" width="1" /><img height="593" alt="ttttt.jpg" src="http://www.aygfsteel.com/images/blogjava_net/1948asd/ttttt.jpg" width="510" border="0" /><br /></strong><br /><br /><strong>DBS¾l“构的分¾c»ï¼š<br /></strong><br />集中å¼DBSåQˆcentralized DBSåQ?br />å®¢æˆ·æœºï¼æœåС噍å¼DBSåQˆclient/server DBSåQŒè®°ä¸ºC/S DBSåQ?br />òq¶è¡Œå¼DBSåQˆparallel DBSåQ?br />分布å¼DBSåQˆdistributed DBSåQ?br /><br /><br /><strong>DBA的主è¦èŒè´£æœ‰ä»¥ä¸‹å…­ç‚¹åQ?/strong><br />1ã€å®šä¹‰æ¨¡å¼ã€?br />2ã€å®šä¹‰å†…模å¼ã€?br />3ã€ä¸Žç”¨æˆ·çš„蔾lœã€‚包括定义外模å¼ã€åº”用程åºçš„è®¾è®¡ã€æä¾›æŠ€æœ¯åŸ¹è®­ç­‰ä¸“ä¸šæœåŠ¡ã€?br />4ã€å®šä¹‰å®‰å…¨æ€§è§„则,对用戯‚®¿é—®æ•°æ®åº“的授æƒã€?br />5ã€å®šä¹‰å®Œæ•´æ€§è§„åˆ™ï¼Œç›‘ç£æ•°æ®åº“çš„˜q行ã€?br />6ã€æ•°æ®åº“çš„è{储与æ¢å¤å·¥ä½œã€?img src ="http://www.aygfsteel.com/1948asd/aggbug/270068.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/1948asd/" target="_blank">我是èœé¸Ÿ</a> 2009-05-11 16:37 <a href="http://www.aygfsteel.com/1948asd/archive/2009/05/11/270068.html#Feedback" target="_blank" style="text-decoration:none;">å‘表评论</a></div>]]></description></item><item><title>oracle æƒé™½Ž¡ç†http://www.aygfsteel.com/1948asd/archive/2009/04/13/265303.html我是èœé¸Ÿæˆ‘是èœé¸ŸMon, 13 Apr 2009 07:42:00 GMThttp://www.aygfsteel.com/1948asd/archive/2009/04/13/265303.htmlhttp://www.aygfsteel.com/1948asd/comments/265303.htmlhttp://www.aygfsteel.com/1948asd/archive/2009/04/13/265303.html#Feedback0http://www.aygfsteel.com/1948asd/comments/commentRss/265303.htmlhttp://www.aygfsteel.com/1948asd/services/trackbacks/265303.html

¾pÈ»Ÿæƒé™åQ?br />grant create session to li;//为用æˆähŽˆäºˆè®¿é—®æ•°æ®åº“çš„æƒé™ã€?br />grant create table to li;//为用æˆähŽˆäºˆåˆ›å»ºæ•°æ®åº“çš„æƒé™ã€?br />grant unlimited tablespace //为用æˆähŽˆäºˆæ²¡æœ‰ä¸Šé™çš„¼‹®è‰¯è®‰K—®è¡¨ç©ºé—´çš„æƒé™ã€?br />revoke table from li;//;//åˆ é™¤ç”¨æˆ·æŽˆäºˆåˆ›å¾æ•°æ®åº“çš„æƒé™ã€?br />revoke unlimited tablespace //删除用户授予没有上é™çš„确良访问表½Iºé—´çš„æƒé™ã€?br />grant create session to public //所有都æœ?br />æ•°æ®å­—å…¸åQ?br />select * from user_sys_privs;//当å‰ç”¨æˆ·æ‹¥æœ‰æƒé™

--------------------------------------------------------------------------------------------
对象æƒé™åQšè°æ‹¥æœ‰è°å°±å¯ä»¥æŽˆæƒ

grant select on mytab to lisi ;//让lisi 有访问li拥有的mytab的查询æƒé™?br />
grant insert on mytab to lisi ;//让lisi 有访问li拥有的mytabçš„æ’å…¥æƒé™?br />

grant all on mytab to lisi;//所有æƒé™èµ‹äº?lisi;

æ•°æ®å­—å…¸åQ?br />select * from user_tab_privs;

grant create session to public //所�br />
对象æƒé™æŽ§åˆ¶åˆ°åˆ—

grant update(name)  on mytab to lisi;//  授予lisiåªèƒ½æ›´æ–°name属æ€?为字ŒDµåˆ†é…æƒé™ï¼šÂ åªèƒ½æ˜¯æ’入和更新)





]]>
Oracle调优åQˆè{åQ?/title><link>http://www.aygfsteel.com/1948asd/archive/2009/04/13/265213.html</link><dc:creator>我是èœé¸Ÿ</dc:creator><author>我是èœé¸Ÿ</author><pubDate>Mon, 13 Apr 2009 00:57:00 GMT</pubDate><guid>http://www.aygfsteel.com/1948asd/archive/2009/04/13/265213.html</guid><wfw:comment>http://www.aygfsteel.com/1948asd/comments/265213.html</wfw:comment><comments>http://www.aygfsteel.com/1948asd/archive/2009/04/13/265213.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/1948asd/comments/commentRss/265213.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/1948asd/services/trackbacks/265213.html</trackback:ping><description><![CDATA[ <p> <span id="wmqeeuq" class="bold"> <span id="wmqeeuq" class="smalltxt"> <strong> <font face="Comic Sans MS">Oracle调优(å…¥é—¨åŠæé«˜ç¯‡)</font> </strong> </span> </span> </p> <p> <span id="wmqeeuq" class="bold"> <span id="wmqeeuq" class="smalltxt"> <strong> <font face="Comic Sans MS"> <font size="1"> <br /> </font> <br /> </font> </strong> </span> </span>在过åŽÈš„å年中, Oracle å·²ç»æˆäؓ世界上最专业的数æ®åº“之一。对äº?IT 专家æ¥è¯´åQŒå°±æ˜¯è¦¼‹®ä¿åˆ©ç”¨ Oracle çš„å¼ºå¤§ç‰¹æ€§æ¥æé«˜ä»–ä»¬å…¬å¸çš„生产力。最有效的方法之一是通过 Oracle 调优。它有大é‡çš„è°ƒæ•´å‚æ•°å’ŒæŠ€æœ¯æ¥æ”¹è¿›ä½ çš„ Oracle æ•°æ®åº“的性能ã€?<br />Oracle è°ƒä¼˜æ˜¯ä¸€ä¸ªå¤æ‚的主题。关于调优å¯ä»¥å†™æ•´æ•´ä¸€æœ¬ä¹¦åQŒä¸˜q‡ï¼Œä¸ÞZº†æ”¹å–„ Oracle æ•°æ®åº“的性能åQŒæœ‰ä¸€äº›åŸºæœ¬çš„æ¦‚念是æ¯ä¸?Oracle DBA 都应该éµä»Žçš„ã€?<br />   在这½‹‡ç®€ä»‹ä¸­åQŒæˆ‘们将½Ž€è¦åœ°ä»‹ç»ä»¥ä¸‹çš?Oracle 主题åQ?<br />  -- 外部调整åQšæˆ‘ä»¬åº”è¯¥è®°ä½?Oracle òq¶ä¸æ˜¯å•独è¿è¡Œçš„。因此我们将查看一下通过调整 Oracle æœåŠ¡å™¨ä»¥å¾—åˆ°é«˜çš„æ€§èƒ½ã€?<br />  --Row re-sequencing 以凞®‘ç£ç›?I/O åQšæˆ‘ä»¬åº”è¯¥æ‡‚å¾?Oracle 调优最é‡è¦çš„目标是å‡å°‘ I/O ã€?<br />  --Oracle SQL 调整ã€?Oracle SQL 调整æ˜?Oracle 调整中最é‡è¦çš„领域之一åQŒåªè¦é€šè¿‡ä¸€äº›ç®€å•çš„ SQL 调优规则ž®±å¯ä»¥å¤§òq…度地æå?SQL 语å¥çš„æ€§èƒ½åQŒè¿™æ˜¯ä¸€ç‚šwƒ½ä¸å¥‡æ€ªçš„ã€?<br />  -- 调整 Oracle 排åºåQšæŽ’åºå¯¹äº?Oracle 性能也是有很大媄å“çš„ã€?<br />  -- 调整 Oracle çš„ç«žäº‰ï¼šè¡¨å’Œç´¢å¼•çš„å‚æ•°è®¾¾|®å¯¹äº?UPDATE å’?INSERT 的性能有很大的影å“ã€?<br /><br />   我们首先从调æ•?Oracle 外部的环境开始。如果内存和 CPU 的资æºä¸­‘³çš„è¯ï¼Œä»ÖM½•çš?Oracle 调整都是没有帮助的ã€?<br /><br />  外部的性能问题 <br />  <br />  Oracle òq¶ä¸æ˜¯å•独è¿è¡Œçš„ã€?Oracle æ•°æ®åº“的性能和外部的环境有很大的关系。这些外部的æ¡äšg包括有: <br />   åQ?CPU--CPU 资æºçš„中‘³ä×oæŸ¥è¯¢å˜æ…¢ã€‚当查询­‘…过äº?Oracle æœåŠ¡å™¨çš„ CPU 性能æ—Óž¼Œä½ çš„æ•°æ®åº“性能ž®±å—åˆ?CPU çš„é™åˆ¶ã€?<br />   åQŽå†…å­?-- å¯ç”¨äº?Oralce 的内存数é‡ä¹Ÿä¼šåª„å“?SQL 的性能åQŒç‰¹åˆ«æ˜¯åœ¨æ•°æ®ç¼“å†²å’Œå†…å­˜æŽ’åºæ–šw¢ã€?<br />   åQŽç½‘¾l?-- 大é‡çš?Net8 通信ä»?SQL çš„æ€§èƒ½å˜æ…¢ã€?<br />   è®¸å¤šæ–°æ‰‹éƒ½é”™è¯¯çš„è®¤äØ“åº”è¯¥é¦–å…ˆè°ƒæ•´ Oracle æ•°æ®åº“ï¼Œè€Œä¸æ˜¯å…ˆ¼‹®è®¤å¤–éƒ¨èµ„æºæ˜¯å¦­‘›_¤Ÿã€‚实际上åQŒå¦‚果外部环境出现瓶颈,å†å¤šçš?Oracle 调整都是没有帮助的ã€?<br />   在检æŸ?Oracle 的外部环境时åQŒæœ‰ä¸¤ä¸ªæ–šw¢æ˜¯éœ€è¦æ³¨æ„çš„åQ?<br />  1 ã€å½“˜q行队列的数目超˜q‡æœåС噍çš?CPU æ•°é‡æ—Óž¼ŒæœåŠ¡å™¨çš„æ€§èƒ½ž®×ƒ¼šå—到 CPU çš„é™åˆ¶ã€‚补救的æ–ÒŽ³•æ˜¯äØ“æœåŠ¡å™¨å¢žåŠ é¢å¤–çš„ CPU 或者关闭需è¦å¾ˆå¤šå¤„ç†èµ„æºçš„¾l„äšgåQŒä¾‹å¦?Oracle Parallel Query ã€?<br />  2 ã€å†…存分™åüc€‚当内存分页æ—Óž¼Œå†…存定w‡å·²ç»ä¸èƒöåQŒè€Œå†…存页是与¼‚盘上的交æ¢åŒø™¿›è¡Œäº¤äº’的。补救的æ–ÒŽ³•是增加更多的内存åQŒå‡ž®?Oracle SGA 的大ž®ï¼Œæˆ–者关é—?Oracle 的多¾U¿ç¨‹æœåС噍ã€?<br />   å¯ä»¥ä½¿ç”¨å„ç§æ ‡å‡†çš„æœåŠ¡å™¨å·¥å…·æ¥å¾—到æœåŠ¡å™¨çš„ç»Ÿè®¡æ•°æ®ï¼Œä¾‹å¦‚ vmstat,glance,top å’?sar ã€?DBA 的目标是¼‹®ä¿æ•°æ®åº“æœåŠ¡å™¨æ‹¥æœ‰­‘›_¤Ÿçš?CPU å’Œå†…å­˜èµ„æºæ¥å¤„ç† Oracle 的请求ã€?<br />   以下让我们æ¥çœ‹ä¸€ä¸?Oracle çš?row-resequencing 是如何能够æžå¤§åœ°å‡å°‘¼‚盘 I/O çš„ã€?<br /><br />  Row-resequencing åQˆè¡Œçš„釿–°æŽ’åºï¼‰ <br />   <br />  ž®Þp±¡æˆ‘ä»¬ä¸Šé¢æåˆ°çš„ï¼Œæœ‰ç»éªŒçš„ Oracle DBA 都知é?I/O 是å“应时间的最大组æˆéƒ¨åˆ†ã€‚其中ç£ç›?I/O 特别厉害åQŒå› ä¸ºå½“ Oracle ç”Þq£ç›˜ä¸Šçš„ä¸€ä¸ªæ•°æ®æ–‡ä»¶å¾—åˆîC¸€ä¸ªæ•°æ®å—æ—Óž¼Œè¯Èš„˜q›ç¨‹ž®±å¿…™åÈ­‰å¾…物ç?I/O æ“作完æˆã€‚ç£ç›˜æ“ä½œè¦æ¯”æ•°æ®ç¼“冲慢 10,000 å€ã€‚因此,如果å¯ä»¥ä»?I/O 最ž®åŒ–åQŒæˆ–者凞®‘由于ç£ç›˜ä¸Šçš„æ–‡ä»¶ç«žäº‰è€Œå¸¦æ¥çš„瓉™¢ˆåQŒå°±å¯ä»¥å¤§å¤§åœ°æ”¹å–?Oracle æ•°æ®åº“的性能ã€?<br />   如果¾pÈ»Ÿå“应很慢åQŒé€šè¿‡å‡å°‘¼‚盘 I/O ž®±å¯ä»¥æœ‰ä¸€ä¸ªå¾ˆå¿«çš„æ”¹å–„。如果在一个事务中通过按一定的范围æœçƒ¦ primary-key 索引æ¥è®¿é—®è¡¨åQŒé‚£ä¹ˆé‡æ–îC»¥ CTAS 的方法组¾l‡è¡¨ž®†æ˜¯ä½ å‡ž®?I/O 的首è¦ç­–略。通过在物ç†ä¸Šž®†è¡ŒæŽ’åºä¸ºå’Œ primary-key 索引一æ ïLš„™åºåºåQŒå°±å¯ä»¥åŠ å¿«èŽ·å¾—æ•°æ®çš„速度ã€?<br />   ž®Þp±¡¼‚盘的负载åã^è¡¡ä¸€æ øP¼Œè¡Œçš„釿–°æŽ’åºä¹Ÿæ˜¯å¾ˆç®€å•çš„åQŒè€Œä¸”也很快。通过与其它的 DBA ½Ž¡ç†æŠ€å·§ä¸€èµ·ä‹É用,ž®±å¯ä»¥åœ¨é«?I/O 的系¾lŸä¸­å¤§å¤§åœ°å‡ž®‘å“应的旉™—´ã€?<br />   在高定w‡çš„在¾U¿äº‹åС处ç†çŽ¯å¢ƒä¸­åQ?online transaction processing åQ?OLTP åQ‰ï¼Œæ•°æ®æ˜¯ç”±ä¸€ä¸?primary ç´¢å¼•å¾—åˆ°çš„ï¼Œé‡æ–°æŽ’åºè¡¨æ ¼çš„行ž®±å¯ä»¥ä×o˜qžç®‹å—çš„™åºåºå’Œå®ƒä»¬çš„ primary ç´¢å¼•ä¸€æ øP¼Œ˜q™æ ·ž®±å¯ä»¥åœ¨ç´¢å¼•驱动的表格查询中åQŒå‡ž®‘物ç?I/O òq¶ä¸”改善å“应旉™—´ã€‚这个技巧仅在应用选择多行的时候有用,或者在使用索引范围æœçƒ¦å’Œåº”用å‘出多个查询æ¥å¾—到˜qžç®‹çš?key æ—¶æœ‰æ•ˆã€‚å¯¹äºŽéšæœºçš„唯一 primary-key åQˆä¸»é”®ï¼‰çš„访问将ä¸ä¼šç”Þp¡Œé‡æ–°æŽ’åºä¸­å¾—到好处ã€?<br />   让我们看一下它是如何工作的。考虑以下的一ä¸?SQL 的查询,它ä‹É用一个烦引æ¥å¾—到 100 行: <br />selectsalaryfromemployeewherelast_name like 'B%'; <br />˜q™ä¸ªæŸ¥è¯¢ž®†ä¼šä½¿ç”¨ last_name_index åQŒæœç´¢å…¶ä¸­çš„æ¯ä¸€è¡Œæ¥å¾—到目标行。这个查询将会至ž®‘ä‹Éç”?100 ‹Æ¡ç‰©ç†ç£ç›˜çš„è¯Õd–åQŒå› ä¸?employee 的行存放在ä¸åŒçš„æ•°æ®å—中ã€?<br />   ä¸è¿‡åQŒå¦‚果表中的行已¾l釿–°æŽ’åºäØ“å’?last_name_index çš„ä¸€æ øP¼ŒåŒæ ·çš„æŸ¥è¯¢åˆä¼šæ€Žæ ·å¤„ç†å‘¢ï¼Ÿæˆ‘们å¯ä»¥çœ‹åˆ°˜q™ä¸ªæŸ¥è¯¢åªéœ€è¦ä¸‰‹Æ¡çš„¼‚ç›˜ I/O ž®Þp¯»å®Œå…¨éƒ?100 个员工的资料åQˆä¸€‹Æ¡ç”¨ä½œçƒ¦å¼•çš„è¯Õd–åQŒä¸¤‹Æ¡ç”¨ä½œæ•°æ®å—的读å–)åQŒå‡ž®‘了 97 ‹Æ¡çš„å—读å–ã€?<br />   釿–°æŽ’åºå¸¦æ¥çš„æ€§èƒ½æ”¹å–„çš„ç¨‹åº¦åœ¨äºŽåœ¨ä½ å¼€å§‹çš„æ—¶å€™è¡Œçš„äØ•åºæ€§å¦‚何,以åŠä½ éœ€è¦ç”±åºåˆ—中访问多ž®‘行。至于一个表中的行与索引的排åºé”®çš„匹é…程度,å¯ä»¥æŸ¥çœ‹æ•°æ®å­—典中的 dba_indexes å’?dba_tables 视图得到ã€?<br />   åœ?dba_indexes 的视图中åQŒæŸ¥çœ?clustering_factor 列。如æž?clustering_factor çš„å€¼å’Œè¡¨ä¸­çš„å—æ•°ç›®å¤§è‡´ä¸€æ øP¼Œé‚£ä¹ˆä½ çš„è¡¨å’Œç´¢å¼•çš„é¡ºåºæ˜¯ä¸€æ ïLš„。丘q‡ï¼Œå¦‚æžœ clustering_factor 的值接˜q‘è¡¨ä¸­çš„è¡Œæ•°ç›®ï¼Œé‚£å°±è¡¨æ˜Žè¡¨æ ¼ä¸­çš„è¡Œå’Œç´¢å¼•çš„é¡ºåºæ˜¯ä¸ä¸€æ ïLš„ã€?<br />   è¡Œé‡æ–°æŽ’åºçš„作用是ä¸å¯ä»¥ž®çœ‹çš„。在需è¦è¿›è¡Œå¤§èŒƒå›´çš„烦引æœç´¢çš„å¤§è¡¨ä¸­ï¼Œè¡Œé‡æ–°æŽ’åºå¯ä»¥ä×o查询的性能æé«˜ä¸‰å€ã€?<br />   一旦你已ç»å†›_®šé‡æ–°æŽ’åºè¡¨ä¸­çš„行åQŒä½ å¯ä»¥ä½¿ç”¨ä»¥ä¸‹çš„工具之一æ¥é‡æ–°ç»„¾l‡è¡¨æ ¹{€?<br />  . 使用 Oracle çš?Create Table As Select (CTAS) è¯­æ³•æ¥æ‹·è´è¡¨æ ?<br />  . Oracle9i è‡ªå¸¦çš„è¡¨æ ¼é‡æ–°ç»„¾l‡å·¥å…?<br />  <br />   以下åQŒæˆ‘们æ¥çœ‹ä»¥ä¸?SQL 语å¥çš„调优ã€?<br /><br />  SQL 调优 <br />  Oracle çš?SQL è°ƒä¼˜æ˜¯ä¸€ä¸ªå¤æ‚的主题åQŒç”šè‡Ïx˜¯éœ€è¦æ•´æœ¬ä¹¦æ¥ä»‹¾l?Oracle SQL 调优的细微差别。丘q‡æœ‰ä¸€äº›åŸºæœ¬çš„规则是æ¯ä¸?Oracle DBA 都需è¦è·Ÿä»Žçš„åQŒè¿™äº›è§„则å¯ä»¥æ”¹å–„他们系¾lŸçš„æ€§èƒ½ã€?SQL 调优的目标是½Ž€å•çš„åQ?<br />  . 消除ä¸å¿…è¦çš„大表全表æœçƒ¦åQšä¸å¿…è¦çš„全表æœç´¢å¯¼è‡´å¤§é‡ä¸å¿…è¦çš?I/O åQŒä»Žè€Œæ‹–慢整个数æ®åº“的性能。调优专安™¦–先会æ ÒŽ®æŸ¥è¯¢˜q”回的行数目æ¥è¯„ä»?SQL 。在一个有åºçš„表中åQŒå¦‚果查询返回少äº?40% 的行åQŒæˆ–者在一个无åºçš„表中åQŒè¿”回少äº?7% 的行åQŒé‚£ä¹ˆè¿™ä¸ªæŸ¥è¯¢éƒ½å¯ä»¥è°ƒæ•´ä¸ÞZ‹É用一个烦引æ¥ä»£æ›¿å…¨è¡¨æœçƒ¦ã€‚对于ä¸å¿…è¦çš„全表æœç´¢æ¥è¯ß_¼Œæœ€å¸¸è§çš„调优方法是增加索引。å¯ä»¥åœ¨è¡¨ä¸­åŠ å…¥æ ‡å‡†çš?B 树烦引,也å¯ä»¥åŠ å…?bitmap 和基于函数的索引。è¦å†›_®šæ˜¯å¦æ¶ˆé™¤ä¸€ä¸ªå…¨è¡¨æœç´¢ï¼Œä½ å¯ä»¥ä»”¾l†æ£€æŸ¥çƒ¦å¼•æœç´¢çš„ I/O 开销和全表æœç´¢çš„开销åQŒå®ƒä»¬çš„开销和数æ®å—的读å–å’Œå¯èƒ½çš„åÆˆè¡Œæ‰§è¡Œæœ‰å…»I¼Œòq¶å°†ä¸¤è€…作å¯Òޝ”。在一些情况下åQŒä¸€äº›ä¸å¿…è¦çš„全表æœç´¢çš„æ¶ˆé™¤å¯ä»¥é€šè¿‡å¼ºåˆ¶ä½¿ç”¨ä¸€ä¸?index æ¥è¾¾åˆŽÍ¼Œåªéœ€è¦åœ¨ SQL 语å¥ä¸­åŠ å…¥ä¸€ä¸ªçƒ¦å¼•çš„æç¤ºž®±å¯ä»¥äº†ã€?<br />  . 在全表æœç´¢æ˜¯ä¸€ä¸ªæœ€å¿«çš„讉K—®æ–ÒŽ³•æ—Óž¼Œž®†å°è¡¨çš„全表æœçƒ¦æ”‘Öˆ°¾~“存中,调优专家应该¼‹®ä¿æœ‰ä¸€ä¸ªä¸“门的数殾~“冲用作行缓册Ӏ‚在 Oracle7 中,你å¯ä»¥ä‹Éç”?alter table xxx cache 语å¥åQŒåœ¨ Oracle8 或以上,ž®è¡¨å¯ä»¥è¢«å¼ºåˆ¶äؓ攑ֈ° KEEP 池中¾~“冲ã€?<br />  . ¼‹®ä¿æœ€ä¼˜çš„索引使用 åQšå¯¹äºŽæ”¹å–„查询的速度åQŒè¿™æ˜¯ç‰¹åˆ«é‡è¦çš„。有æ—?Oracle å¯ä»¥é€‰æ‹©å¤šä¸ªç´¢å¼•æ¥è¿›è¡ŒæŸ¥è¯¢ï¼Œè°ƒä¼˜ä¸“å®¶å¿…é¡»‹‚€æŸ¥æ¯ä¸ªçƒ¦å¼•åÆˆä¸”ç¡®ä¿?Oracle 使用正确的烦引。它˜q˜åŒ…æ‹?bitmap 和基于函数的索引的ä‹É用ã€?<br />  . ¼‹®ä¿æœ€ä¼˜çš„ JOIN æ“作åQšæœ‰äº›æŸ¥è¯¢ä‹Éç”?NESTED LOOP join 快一些,有些则是 HASH join 快一些,å¦å¤–一些则æ˜?sort-merge join æ›´å¿«ã€?<br />   ˜q™äº›è§„åˆ™çœ‹æ¥½Ž€å•,ä¸è¿‡å®ƒä»¬å?SQL 调优ä»ÕdŠ¡çš?90% åQŒåƈ且它们也无需完全懂得 Oracle SQL 的内部è¿ä½œã€‚ä»¥ä¸‹æˆ‘ä»¬æ¥½Ž€å•æ¦‚览以ä¸?Oracle SQL 的优化ã€?<br />   我们首先½Ž€è¦æŸ¥çœ?Oracle 的排åºï¼Œòq¶ä¸”çœ‹ä¸€çœ‹æŽ’åºæ“ä½œæ˜¯å¦‚ä½•å½±å“æ€§èƒ½çš„ã€?<br /><br />   调整 Oracle çš„æŽ’åºæ“ä½?<br />   æŽ’åºæ˜?SQL 语法中一个å°çš„æ–¹é¢ï¼Œä½†å¾ˆé‡è¦åQŒåœ¨ Oracle 的调整中åQŒå®ƒå¸¸å¸¸è¢«å¿½ç•¥ã€‚当使用 create index ã€?ORDER BY 或è€?GROUP BY çš„è¯­å¥æ—¶åQ?Oracle æ•°æ®åº“将会自动执行排åºçš„æ“ä½œã€‚é€šå¸¸åQŒåœ¨ä»¥ä¸‹çš„æƒ…况下 Oracle 会进行排åºçš„æ“ä½œåQ?<br />   使用 Order by çš?SQL è¯­å¥ <br />   使用 Group by çš?SQL è¯­å¥ <br />   在创建烦引的时å€?<br />   ˜q›è¡Œ table join æ—Óž¼Œç”׃ºŽçŽ°æœ‰ç´¢å¼•çš„ä¸­‘Œ™€Œå¯¼è‡?SQL 优化器调ç”?MERGE SORT <br />   当与 Oracle 建立起一ä¸?session æ—Óž¼Œåœ¨å†…存中ž®×ƒ¼šä¸ø™¯¥ session 分é…ä¸€ä¸ªç§æœ‰çš„æŽ’åºåŒºåŸŸã€‚如果该˜qžæŽ¥æ˜¯ä¸€ä¸ªä¸“用的˜qžæŽ¥ (dedicated connection) åQŒé‚£ä¹ˆå°±ä¼šæ ¹æ?init.ora ä¸?sort_area_size 傿•°çš„大ž®åœ¨å†…存中分é…一ä¸?Program Global Area (PGA) 。如果连接是通过多线½E‹æœåŠ¡å™¨å»ºç«‹çš„ï¼Œé‚£ä¹ˆæŽ’åºçš„空间就åœ?large_pool 中分é…。ä¸òq¸çš„æ˜¯ï¼Œå¯¹äºŽæ‰€æœ‰çš„ session åQŒç”¨åšæŽ’åºçš„内存é‡éƒ½å¿…须是一æ ïLš„åQŒæˆ‘们ä¸èƒ½äØ“éœ€è¦æ›´å¤§æŽ’åºçš„æ“ä½œåˆ†é…é¢å¤–的排åºåŒºåŸŸã€‚因此,设计者必™åÖM½œå‡ÞZ¸€ä¸ªåã^衡,在分é…èƒö够的排åºåŒºåŸŸä»¥é¿å…å‘生大的排åºä“Q务时出现¼‚盘排åºåQ?disk sorts åQ‰çš„åŒæ—¶åQŒå¯¹äºŽé‚£äº›åƈä¸éœ€è¦è¿›è¡Œå¾ˆå¤§æŽ’åºçš„ä»ÕdŠ¡åQŒå°±ä¼šå‡ºçŽîC¸€äº›æµªè´V€‚当ç„Óž¼Œå½“排åºçš„½Iºé—´éœ€æ±‚è¶…å‡ÞZº† sort_area_size 的大ž®æ—¶åQŒè¿™æ—¶å°†ä¼šåœ¨ TEMP 表空间中分页˜q›è¡Œ¼‚盘排åºã€‚ç£ç›˜æŽ’åºè¦æ¯”内存排åºå¤§æ¦‚æ…¢ 14,000 å€ã€?<br />   ä¸Šé¢æˆ‘ä»¬å·²ç»æåˆ°åQŒç§æœ‰æŽ’åºåŒºåŸŸçš„大尿˜¯æœ‰ init.ora 中的 sort_area_size 傿•°å†›_®šçš„。æ¯ä¸ªæŽ’åºæ‰€å ç”¨çš„大ž®ç”± init.ora 中的 sort_area_retained_size 傿•°å†›_®šã€‚当排åºä¸èƒ½åœ¨åˆ†é…çš„½Iºé—´ä¸­å®Œæˆæ—¶åQŒå°±ä¼šä‹É用ç£ç›˜æŽ’åºçš„æ–¹å¼åQŒå³åœ?Oracle 实例中的临时表空间中˜q›è¡Œã€?<br />   ¼‚盘排åºçš„开销是很大的åQŒæœ‰å‡ ä¸ªæ–šw¢çš„原因。首先,和内存排åºç›¸æ¯”较åQŒå®ƒä»¬ç‰¹åˆ«æ…¢åQ›è€Œä¸”¼‚盘排åºä¼šæ¶ˆè€—äÍæ—¶è¡¨½Iºé—´ä¸­çš„资æºã€?Oracle ˜q˜å¿…™åÕdˆ†é…ç¼“å†²æ± å—æ¥ä¿æŒä¸´æ—¶è¡¨ç©ºé—´ä¸­çš„å—。无è®ÞZ»€ä¹ˆæ—¶å€™ï¼Œå†…存排åºéƒ½æ¯”¼‚盘排åºå¥½ï¼Œ¼‚盘排庞®†ä¼šä»¤ä“QåŠ¡å˜æ…¢ï¼Œòq¶ä¸”会媄å“?Oracle 实例的当å‰ä“Q务的执行。还有,˜q‡å¤šçš„ç£ç›˜æŽ’åºå°†ä¼šä×o free buffer waits 的值å˜é«˜ï¼Œä»Žè€Œä×o其它ä»ÕdŠ¡çš„æ•°æ®å—ç”Þq¼“冲中¿U»èµ°ã€?<br />   接ç€åQŒè®©æˆ‘们看一ä¸?Oracle 的竞争,òq¶ä¸”çœ‹ä¸€ä¸‹è¡¨çš„å­˜å‚¨å‚æ•°çš„讄¡½®æ˜¯å¦‚何媄å“?SQL UPDATE å’?INSERT 语å¥çš„æ€§èƒ½çš„ã€?<br /><br />调整 Oracle 的竞äº?<br />  Oracle 的其中一个优ç‚ÒŽ—¶å®ƒå¯ä»¥ç®¡ç†æ¯ä¸ªè¡¨½Iºé—´ä¸­çš„自由½Iºé—´ã€?Oracle 负责处ç†è¡¨å’Œç´¢å¼•的空间管ç†ï¼Œ˜q™æ ·ž®±å¯ä»¥è®©æˆ‘们无需懂得 Oracle 的表和烦引的内部˜q作。丘q‡ï¼Œå¯¹äºŽæœ‰ç»éªŒçš„ Oracle 调优专家æ¥è¯´åQŒä»–éœ€è¦æ‡‚å¾?Oracle 是如何管ç†è¡¨çš?extent 和空闲的数æ®å—。对于调整拥有高çš?insert 或è€?update 的系¾lŸæ¥è¯ß_¼Œ˜q™æ˜¯éžå¸¸é‡è¦çš„ã€?<br />   è¦ç²¾é€šå¯¹è±¡çš„调整åQŒä½ éœ€è¦æ‡‚å¾?freelists å’?freelist ¾l„çš„è¡ŒäØ“åQŒå®ƒä»¬å’Œ pctfree å?pctused 傿•°çš„值有兟뀂这些知识对于ä¼ä¸šèµ„æºè®¡åˆ’( ERP åQ‰çš„应用是特别é‡è¦çš„åQŒå› ä¸ºåœ¨˜q™äº›åº”ç”¨ä¸­ï¼Œä¸æ­£¼‹®çš„表设¾|®é€šå¸¸æ˜?DML è¯­å¥æ‰§è¡Œæ…¢çš„原因ã€?<br />   对于åˆå­¦è€…æ¥è¯ß_¼Œæœ€å¸¸è§çš„é”™è¯¯æ˜¯è®¤äØ“é»˜è®¤çš?Oracle 傿•°å¯¹äºŽæ‰€æœ‰çš„对象都是最佳的。除éžç£ç›˜çš„æ¶ˆè€—䏿˜¯ä¸€ä¸ªé—®é¢˜ï¼Œå¦åˆ™åœ¨è®¾¾|®è¡¨çš?pctfree å’?pctused 傿•°æ—Óž¼Œž®±å¿…™å»è€ƒè™‘òq›_‡çš„行长和数æ®åº“çš„å—大ž®ï¼Œ˜q™æ ·½Iºçš„å—æ‰ä¼šè¢«æœ‰æ•ˆåœ°æ”¾åˆ?freelists 中。当˜q™äº›è®„¡½®ä¸æ­£¼‹®æ—¶åQŒé‚£äº›å¾—到的 freelists 也是 "dead" å—ï¼Œå› äØ“å®ƒä»¬æ²¡æœ‰­‘›_¤Ÿçš„空间æ¥å­˜å‚¨ä¸€è¡Œï¼Œ˜q™æ ·ž®†ä¼šå¯ÆD‡´æ˜Žæ˜¾çš„处ç†åšg˜qŸã€?<br />Freelists å¯¹äºŽæœ‰æ•ˆåœ°é‡æ–îC‹Éç”?Oracle 表空间中的空间是很é‡è¦çš„åQŒå®ƒå’?pctfree å?pctused ˜q™ä¸¤ä¸ªå­˜å‚¨å‚数的讄¡½®ç›´æŽ¥ç›¸å…³ã€‚通过ž®?pctused 讄¡½®ä¸ÞZ¸€ä¸ªé«˜çš„å€û|¼Œ˜q™æ—¶æ•°æ®åº“å°±ä¼šå°½å¿«åœ°é‡æ–°ä½¿ç”¨å—。丘q‡ï¼Œé«˜æ€§èƒ½å’Œæœ‰æ•ˆåœ°é‡æ–°ä½¿ç”¨è¡¨çš„å—æ˜¯å¯¹ç«‹çš„。在调整 Oracle 的表格和索引æ—Óž¼Œéœ€è¦è®¤çœŸè€ƒè™‘½I¶ç«Ÿéœ€è¦é«˜æ€§èƒ½˜q˜æ˜¯æœ‰æ•ˆçš„空间é‡ç”¨ï¼Œòq¶ä¸”æ®æ­¤æ¥è®¾¾|®è¡¨çš„傿•°ã€‚以下我们æ¥çœ‹ä¸€ä¸‹è¿™äº?freelists 是如何媄å“?Oracle 的性能的ã€?<br />   å½“æœ‰ä¸€ä¸ªè¯·æ±‚éœ€è¦æ’入一行到表格中时åQ?Oracle ž®×ƒ¼šåˆ?freelist 中寻找一个有­‘›_¤Ÿçš„空间æ¥å®¹çº³ä¸€è¡Œçš„å—。你也许知é“åQ?freelist 串是攑֜¨è¡¨æ ¼æˆ–者烦引的½W¬ä¸€ä¸ªå—中,˜q™ä¸ªå—也被称为段å¤ß_¼ˆ segment header åQ‰ã€?pctfree å’?pctused 傿•°çš„唯一目的ž®±æ˜¯ä¸ÞZº†æŽ§åˆ¶å—如何在 freelists 中进出。虽ç„?freelist link å’?unlink 是简å•çš„ Oracle 功能åQŒä¸˜q‡è®¾¾|?freelist link (pctused) å’?unlink (pctfree) å¯?Oracle 的性能¼‹®å®žæœ‰åª„å“ã€?<br />   ç”?DBA 的基本知识知é“, pctfree 傿•°æ˜¯æŽ§åˆ?freelist un-links 的(å›_°†å—ç”± freelists 中移除)。设¾|?pctfree=10 æ„å‘³ç€æ¯ä¸ªå—都ä¿ç•™ 10% 的空间用作行扩展ã€?pctused 傿•°æ˜¯æŽ§åˆ?freelist re-links 的。设¾|?pctused=40 æ„味ç€åªæœ‰åœ¨å—çš„ä‹É用低äº?40% æ—¶æ‰ä¼šå›žåˆ°è¡¨æ ¼çš„ freelists 中ã€?<br />   许多新手对于一个å—釿–°å›žåˆ° freelists åŽçš„处ç†éƒ½æœ‰äº›è¯¯è§£ã€‚其实,一旦由于一个删除的æ“作而ä×oå—è¢«é‡æ–°åŠ å…¥åˆ?freelist 中,它将会一直ä¿ç•™åœ¨ freelist 中å³ä½¿ç©ºé—´çš„使用­‘…过äº?60% åQŒåªæœ‰åœ¨åˆ°è¾¾ pctfree æ—¶æ‰ä¼šå°†æ•°æ®å—ç”± freelist 中移走ã€?<br /><br />   è¡¨æ ¼å’Œçƒ¦å¼•å­˜å‚¨å‚æ•°è®¾¾|®çš„è¦æ±‚æ€È»“ <br />   以下的一些规则是用æ¥è®„¡½® freelists, freelist groups, pctfree å’?pctused å­˜å‚¨å‚æ•°çš„。你也知é“, pctused å’?pctfree 的值是å¯ä»¥å¾ˆå®¹æ˜“地通过 alter table 命ä×o修改的,一个好çš?DBA 应该知é“如何讄¡½®˜q™äº›å‚数的最佛_€¹{€?<br />   有效åœîC‹Éç”¨ç©ºé—´å’Œé«˜æ€§èƒ½ä¹‹é—´æ˜¯æœ‰çŸ›ç›¾çš„ï¼Œè€Œè¡¨æ ¼çš„å­˜å‚¨å‚æ•°ž®±æ˜¯æŽ§åˆ¶˜q™ä¸ªæ–šw¢çš„矛盾: <br />. å¯¹äºŽéœ€è¦æœ‰æ•ˆåœ°é‡æ–°ä½¿ç”¨½Iºé—´åQŒå¯ä»¥è®¾¾|®ä¸€ä¸ªé«˜çš?pctused å€û|¼Œä¸è¿‡å‰¯ä½œç”¨æ˜¯éœ€è¦é¢å¤–çš„ I/O 。一个高çš?pctused 值æ„味ç€ç›¸å¯¹æ»¡çš„å—都会放åˆ?freelist 中。因此,˜q™äº›å—åœ¨å†æ¬¡æ»¡ä¹‹å‰åªå¯ä»¥æŽ¥å—几行记录åQŒä»Žè€Œå¯¼è‡´æ›´å¤šçš„ I/O ã€?<br />. ˜q½æ±‚高性能的è¯åQŒå¯ä»¥å°† pctused 讄¡½®ä¸ÞZ¸€ä¸ªä½Žçš„å€û|¼Œ˜q™æ„å‘³ç€ Oracle ä¸ä¼šž®†æ•°æ®å—攑ֈ° freelists 中直到它几乎是空的。那么嗞®†å¯ä»¥åœ¨æ»¡ä¹‹å‰æŽ¥æ”¶æ›´å¤šçš„行,因此å¯ä»¥å‡å°‘æ’å…¥æ“作çš?I/O 。è¦è®îC½ Oracle 扩展新å—çš„æ€§èƒ½è¦æ¯”釿–°ä½¿ç”¨çŽ°æœ‰çš„å—高。对äº?Oracle æ¥è¯´åQŒæ‰©å±•一个表比管ç?freelists 消耗更ž®‘的资æºã€?<br />   让我们æ¥å›žé¡¾ä¸€ä¸‹è®¾¾|®å¯¹è±¡å­˜å‚¨å‚数的一些常è§è§„则: <br />   åQŽç»å¸¸å°† pctused 讄¡½®ä¸ºå¯ä»¥æŽ¥æ”¶ä¸€æ¡æ–°è¡Œã€‚对于ä¸èƒ½æŽ¥å—一行的 free blocks 对于我们æ¥è¯´æ˜¯æ²¡æœ‰ç”¨çš„。如果这样åšåQŒå°†ä¼šä×o Oracle çš„æ€§èƒ½å˜æ…¢åQŒå› ä¸?Oracle ž®†åœ¨æ‰©å±•表æ¥å¾—到一个空的å—之å‰åQŒä¼å›¾è¯»å?5 ä¸?"dead" çš?free block ã€?<br />   åQŽè¡¨æ ég¸­ chained rows 的出现æ„å‘³ç€ pctfree 太低或者是 db_block_size 太少。在很多情况下, RAW å’?LONG RAW 列都很巨大,以至­‘…过äº?Oracle 的最大å—的大ž®ï¼Œ˜q™æ—¶ chained rows 是ä¸å¯ä»¥é¿å…çš„ã€?<br />   åQŽå¦‚æžœä¸€ä¸ªè¡¨æœ‰åŒæ—¶æ’入的 SQL 语å¥åQŒé‚£ä¹ˆå®ƒéœ€è¦æœ‰åŒæ—¶åˆ é™¤çš„语å¥ã€‚è¿è¡Œå•一个一个清除的工作ž®†ä¼šæŠŠå…¨éƒ¨çš„½Iºé—²å—放åˆîC¸€ä¸?freelist ä¸­ï¼Œè€Œæ²¡æœ‰å…¶å®ƒåŒ…å«æœ‰ä»ÖM½•½Iºé—²å—çš„ freelists 出现ã€?<br />   åQ?freelist 傿•°åº”该讄¡½®ä¸ø™¡¨æ ¼åŒæ—¶æ›´æ–°çš„æœ€å¤§å€¹{€‚例如,如果在ä“Q何时候,æŸä¸ªè¡¨æœ€å¤šæœ‰ 20 个用æˆäh‰§è¡Œæ’入的æ“作åQŒé‚£ä¹ˆè¯¥è¡¨çš„傿•°åº”该讄¡½®ä¸?freelists=20 ã€?<br />   应记ä½çš„æ˜?freelist groups 傿•°çš„å€¼åªæ˜¯å¯¹äº?Oracle Parallel Server å’?Real Application Clusters æ‰æ˜¯æœ‰ç”¨çš„。对于这¾c?Oracle åQ?freelist groups 应该讄¡½®ä¸ø™®¿é—®è¯¥è¡¨æ ¼çš?Oracle Parallel Server 实例的数ç›?/p> <img src ="http://www.aygfsteel.com/1948asd/aggbug/265213.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/1948asd/" target="_blank">我是èœé¸Ÿ</a> 2009-04-13 08:57 <a href="http://www.aygfsteel.com/1948asd/archive/2009/04/13/265213.html#Feedback" target="_blank" style="text-decoration:none;">å‘表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a> </div> </footer> Ö÷Õ¾Ö©Öë³ØÄ£°å£º <a href="http://" target="_blank">±±º£ÊÐ</a>| <a href="http://" target="_blank">Âí¹«ÊÐ</a>| <a href="http://" target="_blank">¿ª½­ÏØ</a>| <a href="http://" target="_blank">°ØÏçÏØ</a>| <a href="http://" target="_blank">ÁùÖ¦ÌØÇø</a>| <a href="http://" target="_blank">°²¶àÏØ</a>| <a href="http://" target="_blank">¶þÁ¬ºÆÌØÊÐ</a>| <a href="http://" target="_blank">ÓÀÊÙÏØ</a>| <a href="http://" target="_blank">ÏçÄþÏØ</a>| <a href="http://" target="_blank">ͨÓÜÏØ</a>| <a href="http://" target="_blank">ÍòÄêÏØ</a>| <a href="http://" target="_blank">Èð½ðÊÐ</a>| <a href="http://" target="_blank">ÑîÆÖÇø</a>| <a href="http://" target="_blank">Á°Ë®ÏØ</a>| <a href="http://" target="_blank">°¢À­ÉÆ×óÆì</a>| <a href="http://" target="_blank">¹ÌÕòÏØ</a>| <a href="http://" target="_blank">Ã÷ÐÇ</a>| <a href="http://" target="_blank">ËçµÂÏØ</a>| <a href="http://" target="_blank">ÓÀ²ýÏØ</a>| <a href="http://" target="_blank">ÀÖÁêÊÐ</a>| <a href="http://" target="_blank">½­Ô´ÏØ</a>| <a href="http://" target="_blank">¼ÎÒåÏØ</a>| <a href="http://" target="_blank">ÓñÊ÷ÏØ</a>| <a href="http://" target="_blank">Ëç½­ÏØ</a>| <a href="http://" target="_blank">Ã÷ÏªÏØ</a>| <a href="http://" target="_blank">À½²×</a>| <a href="http://" target="_blank">ÁÖÖÝÊÐ</a>| <a href="http://" target="_blank">¶¼²ýÏØ</a>| <a href="http://" target="_blank">ÀàÎÚÆëÏØ</a>| <a href="http://" target="_blank">ÖÜ¿ÚÊÐ</a>| <a href="http://" target="_blank">Û·ÉÆÏØ</a>| <a href="http://" target="_blank">¹ãÖÝÊÐ</a>| <a href="http://" target="_blank">Æû³µ</a>| <a href="http://" target="_blank">Ì©ÖÝÊÐ</a>| <a href="http://" target="_blank">ÕòÆ½ÏØ</a>| <a href="http://" target="_blank">ÃÉ×ÔÏØ</a>| <a href="http://" target="_blank">µ¤¶«ÊÐ</a>| <a href="http://" target="_blank">ºá·åÏØ</a>| <a href="http://" target="_blank">·ö¹µÏØ</a>| <a href="http://" target="_blank">ÕÁÊ÷ÊÐ</a>| <a href="http://" target="_blank">ÉÏÈÄÏØ</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>