<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Oracle数据库数据恢复、性能优化、故障诊断来问问Maclean »  –  ORACLE数据库数据恢复、性能优化、故障诊断来问问MACLEAN</title>
	
	<link>http://www.askmaclean.com</link>
	<description>刘相兵 邮箱: liu.maclean@gmail.com 手机: 13764045638, ORA-ALLSTARS Exadata用户组QQ群:23549328</description>
	<lastBuildDate>Tue, 21 May 2013 16:10:57 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/OracleClinic" /><feedburner:info uri="oracleclinic" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>OracleClinic</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>如何在无审计的环境中追踪Truncate/Drop等危险的DDL操作</title>
		<link>http://feedproxy.google.com/~r/OracleClinic/~3/5QxSr8tjJrI/track-drop-truncate-ddl.html</link>
		<comments>http://www.askmaclean.com/archives/track-drop-truncate-ddl.html#comments</comments>
		<pubDate>Sat, 18 May 2013 13:39:35 +0000</pubDate>
		<dc:creator>Maclean Liu</dc:creator>
				<category><![CDATA[Oracle]]></category>
		<category><![CDATA[Oracle数据恢复、数据库恢复、灾难恢复]]></category>

		<guid isPermaLink="false">http://www.askmaclean.com/?p=12381</guid>
		<description><![CDATA[在有充分审计Audit   SQL的情况下，定位某条DROp/Truncate DDl还是比较容易的。 &#160; 问题是 没有任何SQL审计时呢？ &#160; 首先需要 明确的是 对于 关键的产品数据库系统而言 有效的审计非常重要，不能将以下的方法当做审计选项来用。 其次对于重要的环境和重要的对象， 一般推荐创建一个DDL Trigger 让直接运行的DDL报错，而需要先将对应的DDL Disable之后才能成功 执行DDL， 这样可以降低表/索引因为人为失误导致的误操作。 &#160; 最简单的仍是通过 dba_objects 定位其最后的DDL时间，虽然这个LAST_DDL_TIME 未必是真实的案发时间了， 但如何与应用程序报错结合起来 还是能大致了解问题发生的时间段的， 而这个时间段 对于问题追查至关重要。 此外对于DROP命令而言显然弄不到这个LAST_DDL_TIME。 &#160; 接着可以通过ASH 视图 DBA_HIST_ACTIVE_SESS_HISTORY和 V$ACTIVE_SESSION_HISTORY来定位一些DDL语句， 由于ASH默认是1秒采样一次，所以如果遇到了一些例如RAC 中truncate/drop 常见的 DFS Lock Handle、Enqueue Lock等等待，那么一般ASH都能捕捉到这个DDL，当然这也看运气，毕竟ASH不是审计功能。 &#160; SQL_OPCODE    12 为DROP TABLE  10为 DROP INDEX、85为TRUNCATE TABLE、86为TRUNCATE CLUSTER select USER_ID, [...]<div class='yarpp-related-rss'>

Related posts:<ol>
<li><a href='http://www.askmaclean.com/archives/dbms_logmnr-unsupported-sqlredo-2.html' rel='bookmark' title='dbms_logmnr Unsupported SQLREDO'>dbms_logmnr Unsupported SQLREDO</a></li>
<li><a href='http://www.askmaclean.com/archives/dbms_logmnr-unsupported-sqlredo.html' rel='bookmark' title='dbms_logmnr Unsupported SQLREDO'>dbms_logmnr Unsupported SQLREDO</a></li>
<li><a href='http://www.askmaclean.com/archives/restore-replaced-plsql-objects.html' rel='bookmark' title='如何找回被create or replace覆盖的PL/SQL对象'>如何找回被create or replace覆盖的PL/SQL对象</a></li>
<li><a href='http://www.askmaclean.com/archives/%e7%ae%80%e6%98%93%e9%ab%98%e8%b4%9f%e8%bd%bd%e8%bf%9b%e7%a8%8b%e8%ae%b0%e5%bd%95%e8%84%9a%e6%9c%ac.html' rel='bookmark' title='简易高负载进程记录脚本'>简易高负载进程记录脚本</a></li>
<li><a href='http://www.askmaclean.com/archives/how-to-set-logsource-pathmap-on-goldengate.html' rel='bookmark' title='How to set LOGSOURCE  PATHMAP on GoldenGate'>How to set LOGSOURCE  PATHMAP on GoldenGate</a></li>
<li><a href='http://www.askmaclean.com/archives/11g%e4%b8%adawr%e6%96%b0%e5%bf%ab%e7%85%a7%e8%a7%86%e5%9b%be.html' rel='bookmark' title='11g中AWR新快照视图'>11g中AWR新快照视图</a></li>
</ol>
<img src='http://yarpp.org/pixels/2f0914cf788be644fb4af9949742b6ee'/>
</div>
]]></description>
				<content:encoded><![CDATA[<p>在有充分审计Audit   SQL的情况下，定位某条DROp/Truncate DDl还是比较容易的。</p>
<p>&nbsp;</p>
<p>问题是 没有任何SQL审计时呢？</p>
<p>&nbsp;</p>
<p>首先需要 明确的是 对于 关键的产品数据库系统而言 有效的审计非常重要，不能将以下的方法当做审计选项来用。</p>
<p>其次对于重要的环境和重要的对象， 一般推荐创建一个DDL Trigger 让直接运行的DDL报错，而需要先将对应的DDL Disable之后才能成功 执行DDL， 这样可以降低表/索引因为人为失误导致的误操作。</p>
<p>&nbsp;</p>
<p>最简单的仍是通过 dba_objects 定位其最后的DDL时间，虽然这个LAST_DDL_TIME 未必是真实的案发时间了， 但如何与应用程序报错结合起来 还是能大致了解问题发生的时间段的， 而这个时间段 对于问题追查至关重要。 此外对于DROP命令而言显然弄不到这个LAST_DDL_TIME。</p>
<p>&nbsp;</p>
<p>接着可以通过ASH 视图 DBA_HIST_ACTIVE_SESS_HISTORY和 V$ACTIVE_SESSION_HISTORY来定位一些DDL语句， 由于ASH默认是1秒采样一次，所以如果遇到了一些例如RAC 中truncate/drop 常见的 DFS Lock Handle、Enqueue Lock等等待，那么一般ASH都能捕捉到这个DDL，当然这也看运气，毕竟ASH不是审计功能。</p>
<p>&nbsp;</p>
<p>SQL_OPCODE    12 为DROP TABLE  10为 DROP INDEX、85为TRUNCATE TABLE、86为TRUNCATE CLUSTER</p>
<p>select USER_ID, SQL_OPCODE, XID, SAMPLE_TIME,MODULE,MACHINE<br />
from v$active_session_history<br />
where SQL_OPCODE in (12, 10, 85, 86)<br />
and SAMPLE_TIME between xx and xx;</p>
<p>select USER_ID, SQL_OPCODE, XID, SAMPLE_TIME,MODULE,MACHINE<br />
from dba_hist_active_sess_history<br />
where SQL_OPCODE in (12, 10, 85, 86)<br />
and SAMPLE_TIME between xx and xx;</p>
<p>&nbsp;</p>
<p>如果上述查询给出少量精准结果(例如MACHINE和MODULE很特殊)，那么一般就很容易定位了。  如果查出大量结果，一般优先排除应用程序模块例如 JDBC Thin，如果应用程序本身有BUG导致莫名的DDL，那么理论上应当经常发生。 如果看到一些例如SQLPLUS、PL/SQL Developer认为登陆执行上述命令的记录，则需要特别关注。</p>
<p>&nbsp;</p>
<p>由于DDL语句不作为 共享SQL保存在V$SQL、V$SQLAREA中所以 就算你获得了SQL_ID还是看不到这些SQL语句的，所以无法通过SQL_TEXT来定位这些SQL到底是什么样子。</p>
<p>&nbsp;</p>
<p>这个时候往往需要做Logminer了， 但好在我们有大致的Sample  Time和XID 这样定位SQL就很简单。</p>
<p>&nbsp;</p>
<p>EXECUTE DBMS_LOGMNR.ADD_LOGFILE( LOGFILENAME =&gt; &#8216;/oracle/logs/log1.f&#8217;, OPTIONS =&gt; DBMS_LOGMNR.NEW);</p>
<p>EXECUTE DBMS_LOGMNR.ADD_LOGFILE( LOGFILENAME =&gt; &#8216;/oracle/logs/log2.f&#8217;, OPTIONS =&gt; DBMS_LOGMNR.ADDFILE);<br />
execute DBMS_LOGMNR.START_LOGMNR(DBMS_LOGMNR.DICT_FROM_ONLINE_CATALOG+DBMS_LOGMNR.COMMITTED_DATA_ONLY);<br />
SELECT (XIDUSN || &#8216;.&#8217; || XIDSLT || &#8216;.&#8217; || XIDSQN) AS XID,<br />
USERNAME, SQL_REDO FROM V$LOGMNR_CONTENTS WHERE XID=&#8217;XXX&#8217;;</p>
<p>EXECUTE DBMS_LOGMNR.END_LOGMNR;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>此外在没有审计的情况下 值得参考的数据还有 Listener监听器的日志、OS登陆的Shell日志等。</p>
<div class='yarpp-related-rss'>
<p>Related posts:</p><ol>
<li><a href='http://www.askmaclean.com/archives/dbms_logmnr-unsupported-sqlredo-2.html' rel='bookmark' title='dbms_logmnr Unsupported SQLREDO'>dbms_logmnr Unsupported SQLREDO</a></li>
<li><a href='http://www.askmaclean.com/archives/dbms_logmnr-unsupported-sqlredo.html' rel='bookmark' title='dbms_logmnr Unsupported SQLREDO'>dbms_logmnr Unsupported SQLREDO</a></li>
<li><a href='http://www.askmaclean.com/archives/restore-replaced-plsql-objects.html' rel='bookmark' title='如何找回被create or replace覆盖的PL/SQL对象'>如何找回被create or replace覆盖的PL/SQL对象</a></li>
<li><a href='http://www.askmaclean.com/archives/%e7%ae%80%e6%98%93%e9%ab%98%e8%b4%9f%e8%bd%bd%e8%bf%9b%e7%a8%8b%e8%ae%b0%e5%bd%95%e8%84%9a%e6%9c%ac.html' rel='bookmark' title='简易高负载进程记录脚本'>简易高负载进程记录脚本</a></li>
<li><a href='http://www.askmaclean.com/archives/how-to-set-logsource-pathmap-on-goldengate.html' rel='bookmark' title='How to set LOGSOURCE  PATHMAP on GoldenGate'>How to set LOGSOURCE  PATHMAP on GoldenGate</a></li>
<li><a href='http://www.askmaclean.com/archives/11g%e4%b8%adawr%e6%96%b0%e5%bf%ab%e7%85%a7%e8%a7%86%e5%9b%be.html' rel='bookmark' title='11g中AWR新快照视图'>11g中AWR新快照视图</a></li>
</ol>
<img src='http://yarpp.org/pixels/2f0914cf788be644fb4af9949742b6ee'/>
</div>
<img src="http://feeds.feedburner.com/~r/OracleClinic/~4/5QxSr8tjJrI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.askmaclean.com/archives/track-drop-truncate-ddl.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.askmaclean.com/archives/track-drop-truncate-ddl.html</feedburner:origLink></item>
		<item>
		<title>【Maclean Liu技术分享】拨开Oracle优化器迷雾探究Histogram之秘</title>
		<link>http://feedproxy.google.com/~r/OracleClinic/~3/rre8WCIQ9xA/histogram.html</link>
		<comments>http://www.askmaclean.com/archives/histogram.html#comments</comments>
		<pubDate>Mon, 13 May 2013 15:53:41 +0000</pubDate>
		<dc:creator>Maclean Liu</dc:creator>
				<category><![CDATA[Oracle]]></category>
		<category><![CDATA[Oracle SQL性能调优]]></category>
		<category><![CDATA[histogram]]></category>

		<guid isPermaLink="false">http://www.askmaclean.com/?p=12373</guid>
		<description><![CDATA[【Maclean Liu技术分享】拨开Oracle CBO 优化器迷雾, 探究Histogram直方图之秘,讲座文档正式版已上传 http://t.askmaclean.com/thread-2172-1-1.html 预计时长：　1.5个小时 适合参与成员：　对于性能调优和CBO优化器有兴趣的同学，或急于提升SQL调优技能的同学。 教学视频已上传 ， 收看请猛击下面的地址： http://www.tudou.com/programs/view/TGvP2pIyvwI/ 【Maclean Liu技术分享】Histogram直方图技术演示脚本如下： 【Maclean Liu技术分享】Histogram直方图技术演示脚本.txt (9.93 KB, 下载次数: 65) 讲座材料presentation 当前正式版本下载: 【Maclean Liu技术分享】拨开Oracle CBO优化器迷雾,探究Histogram直方图之秘 20130429.pdf (1.11 MB, 下载次数: 3646)      <div class='yarpp-related-rss'>

Related posts:<ol>
<li><a href='http://www.askmaclean.com/archives/oracle-optimizer-use-histogram.html' rel='bookmark' title='【Maclean Liu技术分享】拨开Oracle优化器迷雾探究Histogram之秘'>【Maclean Liu技术分享】拨开Oracle优化器迷雾探究Histogram之秘</a></li>
<li><a href='http://www.askmaclean.com/archives/maclean-liu-share-mutex.html' rel='bookmark' title='【Maclean Liu技术分 享】深入理解Oracle中 Mutex的内部原理'>【Maclean Liu技术分 享】深入理解Oracle中 Mutex的内部原理</a></li>
<li><a href='http://www.askmaclean.com/archives/maclean-liu-share-oracle-asm.html' rel='bookmark' title='【Maclean Liu技术分 享】深入了解Oracle ASM(一)基础概念'>【Maclean Liu技术分 享】深入了解Oracle ASM(一)基础概念</a></li>
<li><a href='http://www.askmaclean.com/archives/awr-hawk-eyes-training.html' rel='bookmark' title='【技术分享】开Oracle调优鹰眼，深入理解AWR性能报告'>【技术分享】开Oracle调优鹰眼，深入理解AWR性能报告</a></li>
<li><a href='http://www.askmaclean.com/archives/slide%e6%b7%b1%e5%85%a5%e4%ba%86%e8%a7%a3oracle%e8%87%aa%e5%8a%a8%e5%86%85%e5%ad%98%e7%ae%a1%e7%90%86asmm-by-maclean-liu.html' rel='bookmark' title='Slide:深入了解Oracle自动内存管理ASMM by Maclean Liu'>Slide:深入了解Oracle自动内存管理ASMM by Maclean Liu</a></li>
<li><a href='http://www.askmaclean.com/archives/how-to-apply-oracle-one-off-patch.html' rel='bookmark' title='Slide:如何安装Oracle one-off 临时小补丁及注意事项 by Maclean.liu'>Slide:如何安装Oracle one-off 临时小补丁及注意事项 by Maclean.liu</a></li>
<li><a href='http://www.askmaclean.com/archives/slide-upgrade-11-2-0-1-rac-db-rdbms-to-11-2-0-2-in-linux-by-maclean.html' rel='bookmark' title='Slide:Upgrade 11.2.0.1 RAC DB/RDBMS to 11.2.0.2 in Linux By Maclean'>Slide:Upgrade 11.2.0.1 RAC DB/RDBMS to 11.2.0.2 in Linux By Maclean</a></li>
<li><a href='http://www.askmaclean.com/archives/how-to-find-maclean-liu.html' rel='bookmark' title='How to Find Maclean Liu?'>How to Find Maclean Liu?</a></li>
</ol>
<img src='http://yarpp.org/pixels/2f0914cf788be644fb4af9949742b6ee'/>
</div>
]]></description>
				<content:encoded><![CDATA[<p><span style="font-size: large;"><span style="color: red;">【Maclean Liu技术分享】拨开Oracle CBO 优化器迷雾, 探究Histogram直方图之秘,讲座文档正式版已上传<br />
<a href="http://t.askmaclean.com/thread-2172-1-1.html" target="_blank">http://t.askmaclean.com/thread-2172-1-1.html</a></p>
<p>预计时长：　1.5个小时</p>
<p>适合参与成员：　对于性能调优和CBO优化器有兴趣的同学，或急于提升SQL调优技能的同学。</p>
<p>教学视频已上传 ， 收看请猛击下面的地址：</p>
<p><a href="http://www.tudou.com/programs/view/TGvP2pIyvwI/" target="_blank">http://www.tudou.com/programs/view/TGvP2pIyvwI/</a></p>
<p>【Maclean Liu技术分享】Histogram直方图技术演示脚本如下：</p>
<p><img alt="" src="http://t.askmaclean.com/static/image/filetype/text.gif" border="0" /><a href="http://t.askmaclean.com/forum.php?mod=attachment&amp;aid=MTkwNHw4N2M4MDEzZHwxMzY4NDYwMzQ0fDJ8MjE3Mg%3D%3D" target="_blank">【Maclean Liu技术分享】Histogram直方图技术演示脚本.txt</a> <em>(9.93 KB, 下载次数: 65)</em></p>
<p>讲座材料presentation 当前正式版本下载:</p>
<p><img alt="" src="http://t.askmaclean.com/static/image/filetype/pdf.gif" border="0" /><a href="http://t.askmaclean.com/forum.php?mod=attachment&amp;aid=MTY1M3xkNjk5Yzk4OHwxMzY4NDYwMzQ0fDJ8MjE3Mg%3D%3D" target="_blank">【Maclean Liu技术分享】拨开Oracle CBO优化器迷雾,探究Histogram直方图之秘 20130429.pdf</a> <em>(1.11 MB, 下载次数: 3646)</em></span></span></p>
<div id="attach_1653_menu">
<div><span style="font-size: large;"> </span></div>
<div><span style="font-size: large;"> </span></div>
</div>
<p><span style="font-size: large;"><span style="color: red;"> </span></span></p>
<div class='yarpp-related-rss'>
<p>Related posts:</p><ol>
<li><a href='http://www.askmaclean.com/archives/oracle-optimizer-use-histogram.html' rel='bookmark' title='【Maclean Liu技术分享】拨开Oracle优化器迷雾探究Histogram之秘'>【Maclean Liu技术分享】拨开Oracle优化器迷雾探究Histogram之秘</a></li>
<li><a href='http://www.askmaclean.com/archives/maclean-liu-share-mutex.html' rel='bookmark' title='【Maclean Liu技术分 享】深入理解Oracle中 Mutex的内部原理'>【Maclean Liu技术分 享】深入理解Oracle中 Mutex的内部原理</a></li>
<li><a href='http://www.askmaclean.com/archives/maclean-liu-share-oracle-asm.html' rel='bookmark' title='【Maclean Liu技术分 享】深入了解Oracle ASM(一)基础概念'>【Maclean Liu技术分 享】深入了解Oracle ASM(一)基础概念</a></li>
<li><a href='http://www.askmaclean.com/archives/awr-hawk-eyes-training.html' rel='bookmark' title='【技术分享】开Oracle调优鹰眼，深入理解AWR性能报告'>【技术分享】开Oracle调优鹰眼，深入理解AWR性能报告</a></li>
<li><a href='http://www.askmaclean.com/archives/slide%e6%b7%b1%e5%85%a5%e4%ba%86%e8%a7%a3oracle%e8%87%aa%e5%8a%a8%e5%86%85%e5%ad%98%e7%ae%a1%e7%90%86asmm-by-maclean-liu.html' rel='bookmark' title='Slide:深入了解Oracle自动内存管理ASMM by Maclean Liu'>Slide:深入了解Oracle自动内存管理ASMM by Maclean Liu</a></li>
<li><a href='http://www.askmaclean.com/archives/how-to-apply-oracle-one-off-patch.html' rel='bookmark' title='Slide:如何安装Oracle one-off 临时小补丁及注意事项 by Maclean.liu'>Slide:如何安装Oracle one-off 临时小补丁及注意事项 by Maclean.liu</a></li>
<li><a href='http://www.askmaclean.com/archives/slide-upgrade-11-2-0-1-rac-db-rdbms-to-11-2-0-2-in-linux-by-maclean.html' rel='bookmark' title='Slide:Upgrade 11.2.0.1 RAC DB/RDBMS to 11.2.0.2 in Linux By Maclean'>Slide:Upgrade 11.2.0.1 RAC DB/RDBMS to 11.2.0.2 in Linux By Maclean</a></li>
<li><a href='http://www.askmaclean.com/archives/how-to-find-maclean-liu.html' rel='bookmark' title='How to Find Maclean Liu?'>How to Find Maclean Liu?</a></li>
</ol>
<img src='http://yarpp.org/pixels/2f0914cf788be644fb4af9949742b6ee'/>
</div>
<img src="http://feeds.feedburner.com/~r/OracleClinic/~4/rre8WCIQ9xA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.askmaclean.com/archives/histogram.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.askmaclean.com/archives/histogram.html</feedburner:origLink></item>
		<item>
		<title>Exadata Database Machine数据库一体机专题</title>
		<link>http://feedproxy.google.com/~r/OracleClinic/~3/auSxGK2VgM0/exadata.html</link>
		<comments>http://www.askmaclean.com/archives/exadata.html#comments</comments>
		<pubDate>Sat, 04 May 2013 13:47:21 +0000</pubDate>
		<dc:creator>Maclean Liu</dc:creator>
				<category><![CDATA[Exadata]]></category>
		<category><![CDATA[Oracle]]></category>

		<guid isPermaLink="false">http://www.askmaclean.com/?p=12321</guid>
		<description><![CDATA[&#160; &#160; 什么是Exadata? &#160; Exadata是软硬件结合的数据库一体机， 在出厂前完成预配置，在运达用户现场后开封上电即可使用。 &#160; 由SUN 提供的硬件！ 由Oracle提供的软件， Database Server和 Exadata Storage Server software SAGE Exadata的出现意味着大规模并行化，最高的RDBMS性能标杆，容错能力和可扩展能力。 &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; Exadata的历史 &#160; 版本 Version 1 在2008年OOW期间开始宣传， 是Oracle和HP合作开发的。 是当时世界上最快的数据仓库一体机。为顺序物理读提供了额外的性能优化，比其他硬件平台上的Oracle数据仓库快10倍。 &#160; &#160; &#160; &#160; &#160; ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ &#160; &#160; &#160; 版本 Version 2 &#160; 于2009年9月份发布, 由 Oracle和SUN 联合开发。  是当时世界上最快的OLTP一体机。为随机读提供了额外的性能优化。 比Version 1的Exadata在DW上快5倍。 [...]<div class='yarpp-related-rss'>

Related posts:<ol>
<li><a href='http://www.askmaclean.com/archives/exadata-database-machine-host%e7%9a%84%e6%93%8d%e4%bd%9c%e7%b3%bb%e7%bb%9fos%e7%89%88%e6%9c%ac.html' rel='bookmark' title='Exadata Database Machine Host的操作系统OS版本'>Exadata Database Machine Host的操作系统OS版本</a></li>
<li><a href='http://www.askmaclean.com/archives/exadata-v2-pricing.html' rel='bookmark' title='Exadata V2 Pricing'>Exadata V2 Pricing</a></li>
<li><a href='http://www.askmaclean.com/archives/exadata-storage-cell-offloading-smart-scan.html' rel='bookmark' title='Exadata Storage Cell Offloading / Smart Scan'>Exadata Storage Cell Offloading / Smart Scan</a></li>
<li><a href='http://www.askmaclean.com/archives/exadata-v2-oracle-sun-database-machine%e6%95%b0%e6%8d%ae%e5%ba%93%e4%b8%80%e4%bd%93%e6%9c%ba.html' rel='bookmark' title='Exadata V2 Oracle-Sun Database Machine数据库一体机'>Exadata V2 Oracle-Sun Database Machine数据库一体机</a></li>
<li><a href='http://www.askmaclean.com/archives/oracle-sun-exadata-v2-x2-2x2-8-%e4%b8%bb%e8%a6%81%e9%85%8d%e7%bd%ae%e5%af%b9%e6%af%94.html' rel='bookmark' title='Oracle Sun Exadata V2 ,X2-2,X2-8 主要配置对比'>Oracle Sun Exadata V2 ,X2-2,X2-8 主要配置对比</a></li>
<li><a href='http://www.askmaclean.com/archives/exadata-smart-flash-logging%e6%96%b0%e7%89%b9%e6%80%a7.html' rel='bookmark' title='Exadata Smart Flash Logging新特性'>Exadata Smart Flash Logging新特性</a></li>
<li><a href='http://www.askmaclean.com/archives/exadatasmart-scan%e4%ba%8c-fast-full-scan.html' rel='bookmark' title='Exadata:Smart Scan(二) FAST FULL SCAN'>Exadata:Smart Scan(二) FAST FULL SCAN</a></li>
<li><a href='http://www.askmaclean.com/archives/cell-multiblock-physical-read.html' rel='bookmark' title='cell multiblock physical read等待事件'>cell multiblock physical read等待事件</a></li>
<li><a href='http://www.askmaclean.com/archives/exadata-smart-scan-1.html' rel='bookmark' title='Exadata:Smart Scan(一)'>Exadata:Smart Scan(一)</a></li>
<li><a href='http://www.askmaclean.com/archives/oracle-exadata-v2-price.html' rel='bookmark' title='Oracle Exadata v2的价格'>Oracle Exadata v2的价格</a></li>
</ol>
<img src='http://yarpp.org/pixels/2f0914cf788be644fb4af9949742b6ee'/>
</div>
]]></description>
				<content:encoded><![CDATA[<p>&nbsp;</p>
<p><span style="font-size: medium;"><a href="http://www.askmaclean.com/wp-content/uploads/2013/05/Exadata-model1.png"><img class="alignleft" alt="Exadata model1" src="http://www.askmaclean.com/wp-content/uploads/2013/05/Exadata-model1.png" width="252" height="568" /></a></span></p>
<p>&nbsp;</p>
<p><strong><span style="font-size: medium;">什么是Exadata?</span></strong></p>
<p>&nbsp;</p>
<p>Exadata是软硬件结合的数据库一体机， 在出厂前完成预配置，在运达用户现场后开封上电即可使用。</p>
<p>&nbsp;</p>
<p>由SUN 提供的硬件！</p>
<p>由Oracle提供的软件， Database Server和 Exadata Storage Server software SAGE</p>
<p>Exadata的出现意味着大规模并行化，最高的RDBMS性能标杆，容错能力和可扩展能力。</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><a href="http://www.askmaclean.com/wp-content/uploads/2013/05/exadata_v1.png"><img class="size-full wp-image-12327 alignleft" alt="exadata_v1" src="http://www.askmaclean.com/wp-content/uploads/2013/05/exadata_v1.png" width="216" height="285" /></a><span style="font-size: medium;"><strong>Exadata的历史</strong></span></p>
<p>&nbsp;</p>
<p>版本 Version 1</p>
<p>在2008年OOW期间开始宣传， 是Oracle和HP合作开发的。 是当时世界上最快的数据仓库一体机。为顺序物理读提供了额外的性能优化，比其他硬件平台上的Oracle数据仓库快10倍。</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^<br />
<a href="http://www.askmaclean.com/wp-content/uploads/2013/05/exadata_V2.png"><img class="size-full wp-image-12328 alignleft" alt="exadata_V2" src="http://www.askmaclean.com/wp-content/uploads/2013/05/exadata_V2.png" width="196" height="344" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>版本 Version 2</p>
<p>&nbsp;</p>
<p>于2009年9月份发布, 由 Oracle和SUN 联合开发。  是当时世界上最快的OLTP一体机。为随机读提供了额外的性能优化。 比Version 1的Exadata在DW上快5倍。 引入注目的 新 Exadata Storage Software能力。</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>Exadata的最大卖点无意是 其Smart Scan Processing智能扫描技术</p>
<p>&nbsp;</p>
<p><a href="http://www.askmaclean.com/wp-content/uploads/2013/05/exadata-smart-scan1.png"><img class="size-full wp-image-12336 alignleft" alt="exadata smart scan1" src="http://www.askmaclean.com/wp-content/uploads/2013/05/exadata-smart-scan1.png" width="432" height="466" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>Smart Scan Processing智能扫描技术的核心在于offloading，offload很难翻译，但你可以理解为将一部分扫描处理交给Exadata的存储节点来完成。</p>
<p>本来要扫描1GB的数据表，实际符合查询条件的仅10MB数据。 传统架构总是无法避免要让Database Server去扫描那1GB的数据。</p>
<p>&nbsp;</p>
<p>而Exadata将这部分load off到Exadata Cell存储节点上，由cell来扫描那1GB数据，而仅仅返回10MB给Database Server，这样分工是由于存储节点更精于物理扫描也更接近物理磁盘。</p>
<p>&nbsp;</p>
<p>真正实现Smart Scan智能扫描的是Oracle Exadata Storage Software 代号Sage， 开发时间估计在2006或更早就开始了！</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>Oracle Exadata Storage Software SAGE是 Exadata的灵魂， 是Oracle自主研发的能听懂数据库SQL语言的智能存储软件。 由于SAGE软件才是Exadata的灵魂，所以光靠堆积flashcard、Infiniband等硬件是无法山寨Exadata数据库一体机的。</p>
<p>&nbsp;</p>
<p><span style="font-family: 'arial black', 'avant garde';"><strong>Exadata目前的一用户包括 StartBucks 、Facebook、华为、中国移动、上海银行、工商银行、Apple苹果、三星电子、LG、法国巴黎银行、韩国电信、韩亚航空、澳大利亚联邦银行、日本软银集团、海尔、喜达屋集团、尼桑、PayPal、土耳其电信、神奈川県警察本部、株式会社三井住友銀行、中国华夏银行、中国人民人寿保险股份有限公司、深圳市人社局、青岛市人社局、乌鲁木齐市人社局、本溪市人社局、新疆电信、广东移动、辽宁移动、福建移动、神华集团、东风汽车、海尔集团、中冶赛迪重庆信息技术有限公司、上海研发公共服务平台、中远集装箱运输有限公司、内蒙古电网、启融普惠(北京)科技有限公司、印孚瑟斯技术有限公司和香港房屋署</strong></span><span style="font-family: 'arial black', 'avant garde';"><strong>等等。</strong></span></p>
<p>&nbsp;</p>
<p><a href="http://www.askmaclean.com/wp-content/uploads/2013/05/Exadata用户群.png"><img class="size-full wp-image-12347 aligncenter" alt="Exadata用户群" src="http://www.askmaclean.com/wp-content/uploads/2013/05/Exadata用户群.png" width="692" height="467" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><span style="font-size: medium;">Exadata的硬件主要分成三个部分： </span></p>
<ul>
<li><span style="font-size: medium;">Database Server 有时候也叫做Compute Node</span></li>
<li><span style="font-size: medium;">Storage Server 也叫做Cell Node</span></li>
<li><span style="font-size: medium;">Infiniband Switch 简写IB SW</span></li>
</ul>
<p><span style="font-size: medium;">如下图：</span></p>
<p>&nbsp;</p>
<p><a href="http://www.askmaclean.com/wp-content/uploads/2013/05/exadata-arch.png"><img class="size-full wp-image-12352 aligncenter" alt="exadata arch" src="http://www.askmaclean.com/wp-content/uploads/2013/05/exadata-arch.png" width="1137" height="523" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><a href="http://www.askmaclean.com/wp-content/uploads/2013/05/exadata-arch2.png"><img class="size-full wp-image-12354 alignnone" alt="exadata arch2" src="http://www.askmaclean.com/wp-content/uploads/2013/05/exadata-arch2.png" width="793" height="564" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><span style="font-size: large; font-family: 'courier new', courier;">Oracle Exadata X2-2 and X2-8的 Storage Servers</span></p>
<p>&nbsp;</p>
<p><a href="http://www.askmaclean.com/wp-content/uploads/2013/05/Storage-Server-Exadata.png"><img class="aligncenter size-full wp-image-12356" alt="Storage Server Exadata" src="http://www.askmaclean.com/wp-content/uploads/2013/05/Storage-Server-Exadata.png" width="762" height="460" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><span style="font-size: large; font-family: 'courier new', courier;">Oracle Exadata V2 Storage Servers</span></p>
<p><a href="http://www.askmaclean.com/wp-content/uploads/2013/05/storage-server-v2.png"><img class="wp-image-12357 aligncenter" alt="storage server v2" src="http://www.askmaclean.com/wp-content/uploads/2013/05/storage-server-v2.png" width="844" height="505" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><span style="font-size: large;">Exadata真机在SUN的装配流水线上</span></p>
<p>&nbsp;</p>
<p><a href="http://www.askmaclean.com/wp-content/uploads/2013/05/Exadata真机在装配流水线上.png"><img class="aligncenter size-full wp-image-12360" alt="Exadata真机在装配流水线上" src="http://www.askmaclean.com/wp-content/uploads/2013/05/Exadata真机在装配流水线上.png" width="420" height="559" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>========================================================================分割线</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<div class='yarpp-related-rss'>
<p>Related posts:</p><ol>
<li><a href='http://www.askmaclean.com/archives/exadata-database-machine-host%e7%9a%84%e6%93%8d%e4%bd%9c%e7%b3%bb%e7%bb%9fos%e7%89%88%e6%9c%ac.html' rel='bookmark' title='Exadata Database Machine Host的操作系统OS版本'>Exadata Database Machine Host的操作系统OS版本</a></li>
<li><a href='http://www.askmaclean.com/archives/exadata-v2-pricing.html' rel='bookmark' title='Exadata V2 Pricing'>Exadata V2 Pricing</a></li>
<li><a href='http://www.askmaclean.com/archives/exadata-storage-cell-offloading-smart-scan.html' rel='bookmark' title='Exadata Storage Cell Offloading / Smart Scan'>Exadata Storage Cell Offloading / Smart Scan</a></li>
<li><a href='http://www.askmaclean.com/archives/exadata-v2-oracle-sun-database-machine%e6%95%b0%e6%8d%ae%e5%ba%93%e4%b8%80%e4%bd%93%e6%9c%ba.html' rel='bookmark' title='Exadata V2 Oracle-Sun Database Machine数据库一体机'>Exadata V2 Oracle-Sun Database Machine数据库一体机</a></li>
<li><a href='http://www.askmaclean.com/archives/oracle-sun-exadata-v2-x2-2x2-8-%e4%b8%bb%e8%a6%81%e9%85%8d%e7%bd%ae%e5%af%b9%e6%af%94.html' rel='bookmark' title='Oracle Sun Exadata V2 ,X2-2,X2-8 主要配置对比'>Oracle Sun Exadata V2 ,X2-2,X2-8 主要配置对比</a></li>
<li><a href='http://www.askmaclean.com/archives/exadata-smart-flash-logging%e6%96%b0%e7%89%b9%e6%80%a7.html' rel='bookmark' title='Exadata Smart Flash Logging新特性'>Exadata Smart Flash Logging新特性</a></li>
<li><a href='http://www.askmaclean.com/archives/exadatasmart-scan%e4%ba%8c-fast-full-scan.html' rel='bookmark' title='Exadata:Smart Scan(二) FAST FULL SCAN'>Exadata:Smart Scan(二) FAST FULL SCAN</a></li>
<li><a href='http://www.askmaclean.com/archives/cell-multiblock-physical-read.html' rel='bookmark' title='cell multiblock physical read等待事件'>cell multiblock physical read等待事件</a></li>
<li><a href='http://www.askmaclean.com/archives/exadata-smart-scan-1.html' rel='bookmark' title='Exadata:Smart Scan(一)'>Exadata:Smart Scan(一)</a></li>
<li><a href='http://www.askmaclean.com/archives/oracle-exadata-v2-price.html' rel='bookmark' title='Oracle Exadata v2的价格'>Oracle Exadata v2的价格</a></li>
</ol>
<img src='http://yarpp.org/pixels/2f0914cf788be644fb4af9949742b6ee'/>
</div>
<img src="http://feeds.feedburner.com/~r/OracleClinic/~4/auSxGK2VgM0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.askmaclean.com/archives/exadata.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.askmaclean.com/archives/exadata.html</feedburner:origLink></item>
		<item>
		<title>【CBO Optimizer优化器】IX_SEL索引选择率</title>
		<link>http://feedproxy.google.com/~r/OracleClinic/~3/4Y-seosEaI0/ix_sel.html</link>
		<comments>http://www.askmaclean.com/archives/ix_sel.html#comments</comments>
		<pubDate>Mon, 29 Apr 2013 15:34:15 +0000</pubDate>
		<dc:creator>Maclean Liu</dc:creator>
				<category><![CDATA[Oracle]]></category>
		<category><![CDATA[Oracle SQL性能调优]]></category>

		<guid isPermaLink="false">http://www.askmaclean.com/?p=12300</guid>
		<description><![CDATA[ix_sel &#8211; Index selectivity 索引选择率是Oracle中CBO 基于成本优化器重要的参考指标 ，反应了符合谓词条件 通过索引主导列访问表上数据行的比例。(ix_sel &#8211; Index selectivity. Fraction of the table rows accessed by the indexes leading column in order to meet the predicate supplied. (10053)。   注意仅仅leading column即索引的主导列用作计算ix_sel 举一个简单的计算ix_sel的例子： SQL&#62; create index ind_maclean on sh.sales( prod_id,CUST_ID,TIME_ID); Index created. SQL&#62; exec dbms_stats.gather_table_stats(&#8216;SH&#8217;,'SALES&#8217;,cascade=&#62;true,method_opt=&#62;&#8217;FOR ALL COLUMNS SIZE 1&#8242;); PL/SQL procedure successfully completed. &#160; [...]<div class='yarpp-related-rss'>

Related posts:<ol>
<li><a href='http://www.askmaclean.com/archives/%e4%bc%98%e5%8c%96%e6%a8%a1%e5%bc%8f%e5%8c%ba%e5%88%aball_rows-first_rows_n.html' rel='bookmark' title='优化模式区别(all_rows &amp; first_rows_n)'>优化模式区别(all_rows &amp; first_rows_n)</a></li>
<li><a href='http://www.askmaclean.com/archives/cbo%e4%b8%ba%e4%bb%80%e4%b9%88%e4%b8%8d%e8%b5%b0%e7%b4%a2%e5%bc%95%ef%bc%9f.html' rel='bookmark' title='CBO为什么不走索引？'>CBO为什么不走索引？</a></li>
<li><a href='http://www.askmaclean.com/archives/cbo-terms.html' rel='bookmark' title='Oracle CBO术语大集合'>Oracle CBO术语大集合</a></li>
<li><a href='http://www.askmaclean.com/archives/11g-new-feature-cardinality-feedback.html' rel='bookmark' title='【11g新特性】Cardinality Feedback基数反馈'>【11g新特性】Cardinality Feedback基数反馈</a></li>
<li><a href='http://www.askmaclean.com/archives/know-more-about-cbo-index-cost.html' rel='bookmark' title='Know more about CBO Index Cost'>Know more about CBO Index Cost</a></li>
<li><a href='http://www.askmaclean.com/archives/resolve-split-partition-recursive-sql-hint-performance-issue.html' rel='bookmark' title='解决Oracle中Split Partition缓慢的问题'>解决Oracle中Split Partition缓慢的问题</a></li>
<li><a href='http://www.askmaclean.com/archives/how-to-validate-sql-profile-performance.html' rel='bookmark' title='如何验证SQL PROFILE的性能？'>如何验证SQL PROFILE的性能？</a></li>
<li><a href='http://www.askmaclean.com/archives/%e7%ba%a6%e6%9d%9f%e6%9d%a1%e4%bb%b6%e5%af%b9%e4%ba%8e%e6%9f%a5%e8%af%a2%e4%bc%98%e5%8c%96%e7%9a%84%e4%bd%9c%e7%94%a8.html' rel='bookmark' title='约束条件对于查询优化的作用'>约束条件对于查询优化的作用</a></li>
<li><a href='http://www.askmaclean.com/archives/cbo-cost-formulas-caculate.html' rel='bookmark' title='CBO Cost Formulas基于成本优化器的成本计算公式大全'>CBO Cost Formulas基于成本优化器的成本计算公式大全</a></li>
<li><a href='http://www.askmaclean.com/archives/oracle-advanced-securitycolumn-encryption-overhead.html' rel='bookmark' title='Oracle Advanced Security:Column Encryption Overhead'>Oracle Advanced Security:Column Encryption Overhead</a></li>
</ol>
<img src='http://yarpp.org/pixels/2f0914cf788be644fb4af9949742b6ee'/>
</div>
]]></description>
				<content:encoded><![CDATA[<p><span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;">ix_sel &#8211; Index selectivity 索引选择率是Oracle中CBO 基于成本优化器重要的参考指标 ，反应了符合谓词条件 通过索引主导列访问表上数据行的比例。(ix_sel &#8211; Index selectivity. Fraction of the table rows accessed by the indexes leading column in order to meet the predicate supplied. (10053)。</span></p>
<p><span style="font-family: 'book antiqua', palatino; font-size: medium;"> </span></p>
<p><span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;">注意仅仅leading column即索引的主导列用作计算ix_sel</span></p>
<p><span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;">举一个简单的计算ix_sel的例子：</span></p>
<p><span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;">SQL&gt; create index ind_maclean on sh.sales( prod_id,CUST_ID,TIME_ID);</span></p>
<p><span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;">Index created.</span></p>
<p><span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;">SQL&gt; exec dbms_stats.gather_table_stats(&#8216;SH&#8217;,'SALES&#8217;,cascade=&gt;true,method_opt=&gt;&#8217;FOR ALL COLUMNS SIZE 1&#8242;);</span></p>
<p><span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;">PL/SQL procedure successfully completed.</span></p>
<p>&nbsp;</p>
<p><span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;">SQL&gt; oradebug setmypid</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;">Statement processed.</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;">SQL&gt; oradebug event 10053 trace name context forever ,level 1;</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;">Statement processed.</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;">SQL&gt; explain plan for select * from sh.sales where prod_id=13 and CUST_ID=987;</span></p>
<p><span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;">Explained.</span></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><span style="font-size: medium;"> </span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> BEGIN Single Table Cardinality Estimation</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> Column (#1): PROD_ID(NUMBER)</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> AvgLen: 4.00<span style="color: #ff0000;"> NDV: 72</span> Nulls: 0 Density: 0.013889 Min: 13 Max: 148</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> Column (#2): CUST_ID(NUMBER)</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> AvgLen: 5.00 <span style="color: #ff0000;">NDV: 5828</span> Nulls: 0 Density: 1.7159e-04 Min: 2 Max: 100989</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> Table: SALES Alias: SALES </span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> Card: Original: 924076 Rounded: 2 Computed: 2.20 Non Adjusted: 2.20</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> END Single Table Cardinality Estimation</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> Access Path: TableScan</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> Cost: 414.20 Resp: 414.20 Degree: 0</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> Cost_io: 389.00 Cost_cpu: 215902675</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> Resp_io: 389.00 Resp_cpu: 215902675 </span></p>
<p><span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;">www.askmaclean.com</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> Access Path: index (RangeScan)</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> Index: IND_MACLEAN</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> resc_io: 5.00 resc_cpu: 37017</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> <span style="color: #ff0000;"> ix_sel: 2.3831e-06</span> ix_sel_with_filters: 2.3831e-06</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> Cost: 5.00 Resp: 5.00 Degree: 1</span></p>
<p><span style="font-size: medium;"> </span></p>
<p><span style="font-size: medium;"> </span></p>
<p><span style="font-size: medium;"> </span></p>
<p><span style="font-size: medium; font-family: 'book antiqua', palatino;"><strong><span style="color: #ff0000;">ix_sel= 1/ (72*5828)=2.3831e-06</span></strong></span></p>
<p><span style="font-family: 'book antiqua', palatino; font-size: medium;"> </span></p>
<p><span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;">对于 Equality predicates 且变量可见(硬绑定或 绑定可窥视) IX_SEL=1 / (NDV1* NDV2*..)</span></p>
<p><span style="font-size: medium;"> </span></p>
<p><span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;">同样变量可见情况下&gt;、&lt;开放范围 IX_SEL=(MAX- 代入的范围值) / (MAX-MIN)</span></p>
<p><span style="font-family: 'book antiqua', palatino; font-size: medium;"> </span></p>
<p><span style="font-family: 'book antiqua', palatino; font-size: medium;"> </span></p>
<p>&nbsp;</p>
<p><span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;">而变量不可见(cursor_sharing=FORCE、_optim_peek_user_binds=false)的情况:</span></p>
<p>&nbsp;</p>
<p><span style="font-family: 'book antiqua', palatino; font-size: medium; color: #3366ff;">1、Equality predicates 等式谓词情况下，IX_SEL一般等于列的Density</span></p>
<p>&nbsp;</p>
<p><span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;">2、 对于&gt; &lt;大于、小于的开放范围谓词 ix_sel一般恒等于0.009，  对于 (object_id&gt;:i and object_id&lt;:b;)的闭包则恒等于 0.0045</span></p>
<p><span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;">例如：</span></p>
<p><span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;">select count(*) from test where object_id&gt;:i</span></p>
<p><span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;">Access Path: index (IndexOnly)</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> Index: TEST_IDX</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> resc_io: 3.00 resc_cpu: 160764</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> ix_sel: 0.009 ix_sel_with_filters: 0.009</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> Cost: 3.02 Resp: 3.02 Degree: 1</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> Best:: AccessPath: IndexRange Index: TEST_IDX</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> Cost: 3.02 Degree: 1 Resp: 3.02 Card: 3869.30 Bytes: 0</span></p>
<p><span style="font-family: 'book antiqua', palatino; font-size: medium;"> </span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> select count(*) from test where object_id&gt;:i and object_id&lt;:b</span></p>
<p><span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;">Access Path: index (IndexOnly)</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> Index: TEST_IDX</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> resc_io: 2.00 resc_cpu: 84043</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> ix_sel: 0.0045 ix_sel_with_filters: 0.0045</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> Cost: 2.01 Resp: 2.01 Degree: 1</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> Best:: AccessPath: IndexRange Index: TEST_IDX</span><br />
<span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;"> Cost: 2.01 Degree: 1 Resp: 2.01 Card: 193.47 Bytes: 0</span></p>
<p><span style="font-family: 'book antiqua', palatino; color: #3366ff; font-size: medium;">ix_sel的 0.009和0.0045 都是写死在代码里的常数值，具体可以参考下表：</span></p>
<p><span style="font-family: 'book antiqua', palatino; font-size: medium;"> </span></p>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">/* defaults */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;"> </span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">/* Default selectivities are set low to</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;"> </span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">keep cost values low for future resource limiter use</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">keep cost values low for permutation cutoff in kko</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">Defaults are used for bind variables, general expressions and</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;"> </span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">unanalyzed tables, except for equality where defaults are not</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;"> </span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">needed for bind variables.</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;"> </span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">*/</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;"> </span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKEDSREL 0.05 /* default selectivity for &lt; &lt;= &gt; &gt;= */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKEDSEQ 0.01 /* default selectivity for = */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKEDSNE 0.05 /* default selectivity for != */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKEDSDF 0.05 /* default selectivity for all other ops */</span></div>
<div><span style="font-family: 'book antiqua', palatino; font-size: medium;"><strong><span style="color: #3366ff;">#define KKEDSIRL 0.009 /* default selectivity for relation on indexed col */</span></strong></span></div>
<div><span style="font-family: 'book antiqua', palatino; font-size: medium;"><strong><span style="color: #3366ff;">#define KKEDSBRL 0.009 /* def sel for relation with bind var on index col*/</span></strong></span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKEDSIEQ 0.004 /* default selectivity for = on indexed col */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKEDMBR 8 /* default multiblock read factor */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKEDMBW 8 /* default multiblock write factor */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKEDFNR 100.0 /* default &#8211; fixed table cardinality */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKEDFRL 20 /* default &#8211; fixed table row length */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKEDDNR 2000.0 /* default &#8211; remote table cardinality */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKEDDRL 100 /* default &#8211; remote table avg row length */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKEDDNB 100 /* default &#8211; default # of blocks */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKEDDSC 13.0 /* default &#8211; default scan cost */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKEDILV 1 /* default &#8211; default index levels */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKEDILB 25 /* default &#8211; number of index leaf blocks */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKEDLBK 1 /* default &#8211; number leaf blocks/key */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKEDDBK 1 /* default &#8211; number of data blocks/key */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKEDKEY 100 /* default &#8211; number of distinct keys */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKEDCLF (KKEDDNB*8) /* default &#8211; clustering factor */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKECRI 1.5 /* remote table access cost increase factor */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKECFSC 1.0 /* fixed table scan cost */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKECFNB 0 /* fixed table number of blocks */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKECMXB 15 /* maximum byte length for normalization */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKECBBS 256.0 /* base for byte sequence normalization */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKECSPC &#8216; &#8216; /* space byte value */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKECSPD 86400.0 /* seconds per day */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKESROH 10.0 /* sort per row overhead in bytes */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKESAUT 0.75 /* sort area utilization */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKESROP 0.10 /* sort row overhead percent */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKESRML 2.0 /* sort run multiple */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKESTP 0&#215;01 /* single table predicate */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKETEQ 0&#215;02 /* equi join */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKETBCPJ 0&#215;04 /* Cartesian product join */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKESOK 0&#215;08 /* input swap ok */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKESWP 0&#215;10 /* inputs swapped */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKEEQP 0&#215;20 /* equipartitioned */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKELKNWC 0&#215;01 /* LIKE no wild card */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKELKTWC 0&#215;02 /* LIKE trailing wild card */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKELKEWC 0&#215;04 /* LIKE embedded wild card */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKELKLWC 0&#215;08 /* LIKE leading wild card */</span></div>
<div><span style="color: #3366ff; font-family: 'book antiqua', palatino; font-size: medium;">#define KKELKOWC 0&#215;10 /* LIKE only wild card */</span></div>
<p><span style="font-family: 'book antiqua', palatino; font-size: medium;"> </span></p>
<p><span style="font-family: 'book antiqua', palatino; font-size: medium;"> </span></p>
<p><span style="font-family: 'book antiqua', palatino; font-size: medium;"> </span></p>
<div class='yarpp-related-rss'>
<p>Related posts:</p><ol>
<li><a href='http://www.askmaclean.com/archives/%e4%bc%98%e5%8c%96%e6%a8%a1%e5%bc%8f%e5%8c%ba%e5%88%aball_rows-first_rows_n.html' rel='bookmark' title='优化模式区别(all_rows &amp; first_rows_n)'>优化模式区别(all_rows &amp; first_rows_n)</a></li>
<li><a href='http://www.askmaclean.com/archives/cbo%e4%b8%ba%e4%bb%80%e4%b9%88%e4%b8%8d%e8%b5%b0%e7%b4%a2%e5%bc%95%ef%bc%9f.html' rel='bookmark' title='CBO为什么不走索引？'>CBO为什么不走索引？</a></li>
<li><a href='http://www.askmaclean.com/archives/cbo-terms.html' rel='bookmark' title='Oracle CBO术语大集合'>Oracle CBO术语大集合</a></li>
<li><a href='http://www.askmaclean.com/archives/11g-new-feature-cardinality-feedback.html' rel='bookmark' title='【11g新特性】Cardinality Feedback基数反馈'>【11g新特性】Cardinality Feedback基数反馈</a></li>
<li><a href='http://www.askmaclean.com/archives/know-more-about-cbo-index-cost.html' rel='bookmark' title='Know more about CBO Index Cost'>Know more about CBO Index Cost</a></li>
<li><a href='http://www.askmaclean.com/archives/resolve-split-partition-recursive-sql-hint-performance-issue.html' rel='bookmark' title='解决Oracle中Split Partition缓慢的问题'>解决Oracle中Split Partition缓慢的问题</a></li>
<li><a href='http://www.askmaclean.com/archives/how-to-validate-sql-profile-performance.html' rel='bookmark' title='如何验证SQL PROFILE的性能？'>如何验证SQL PROFILE的性能？</a></li>
<li><a href='http://www.askmaclean.com/archives/%e7%ba%a6%e6%9d%9f%e6%9d%a1%e4%bb%b6%e5%af%b9%e4%ba%8e%e6%9f%a5%e8%af%a2%e4%bc%98%e5%8c%96%e7%9a%84%e4%bd%9c%e7%94%a8.html' rel='bookmark' title='约束条件对于查询优化的作用'>约束条件对于查询优化的作用</a></li>
<li><a href='http://www.askmaclean.com/archives/cbo-cost-formulas-caculate.html' rel='bookmark' title='CBO Cost Formulas基于成本优化器的成本计算公式大全'>CBO Cost Formulas基于成本优化器的成本计算公式大全</a></li>
<li><a href='http://www.askmaclean.com/archives/oracle-advanced-securitycolumn-encryption-overhead.html' rel='bookmark' title='Oracle Advanced Security:Column Encryption Overhead'>Oracle Advanced Security:Column Encryption Overhead</a></li>
</ol>
<img src='http://yarpp.org/pixels/2f0914cf788be644fb4af9949742b6ee'/>
</div>
<img src="http://feeds.feedburner.com/~r/OracleClinic/~4/4Y-seosEaI0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.askmaclean.com/archives/ix_sel.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.askmaclean.com/archives/ix_sel.html</feedburner:origLink></item>
		<item>
		<title>【数据恢复】详解ORA-1410错误</title>
		<link>http://feedproxy.google.com/~r/OracleClinic/~3/nXOdiraUVBs/ora-1410.html</link>
		<comments>http://www.askmaclean.com/archives/ora-1410.html#comments</comments>
		<pubDate>Sun, 28 Apr 2013 15:18:32 +0000</pubDate>
		<dc:creator>Maclean Liu</dc:creator>
				<category><![CDATA[Oracle]]></category>
		<category><![CDATA[Oracle数据恢复、数据库恢复、灾难恢复]]></category>

		<guid isPermaLink="false">http://www.askmaclean.com/?p=12291</guid>
		<description><![CDATA[ORA-1410 invalid rows错误是与ORA-8103相似的Oracle数据库逻辑层面的讹误。 了解ORA-1410逻辑坏块问题的成因，以及有效的解决手段十分重要。 解决方案之一： 可以通过如下PL/SQL过程将健康数据复制到新建表中，对于问题数据块中的数据将被跳过，对于能够容忍数据丢失的场景可以考虑这样恢复，之后truncate 原表/分区并将健康数据加载进去。 具体的脚本见下面的链接： 【数据恢复】利用构造ROWID实现无备份情况下绕过ORA-1578、ORA-8103、ORA-1410等逻辑/物理坏块问题 &#160; oerr ora 1410 01410, 00000, &#8220;invalid ROWID&#8221; // *Cause: // *Action: 如果对ORA-1410做errorstack 一般会看到下面的LOG: OBJD MISMATCH typ=6, seg.obj=%d, diskobj=%d, dsflg=%d, dsobj=%d, tid=%d, cls=%d &#160; 触发ORA-1410错误的stack call一般都是：  kcbgtcr=&#62;kcbzib=&#62;kcbz_check_objd_typ，即在对数据块做逻辑读时运行到kcbz_check_objd_typ函数时，检测到OBJD 不一致的问题。由于seg.obj和diskobj不一致，而10g以后的kcbz_check_objd_typ函数负责验证块上的objd是否mistmatch，若不一致则触发ORA-1410错误。 造成objd mimatch的主要可能有几种： 1、 写丢失 Lost Write， 写丢失造成相关数据块没有为现有对象正常格式化，导致虽然该数据块的checksum是正确的,但对应数据字典却是不一致的。 写丢失也可能由磁盘或卷组镜像同步软件的不完整复制造成。 &#160; If the on-disk objd is &#60; kcbdsobj, then there [...]<div class='yarpp-related-rss'>

Related posts:<ol>
<li><a href='http://www.askmaclean.com/archives/ora-8103.html' rel='bookmark' title='【数据恢复】详解ORA-8103错误'>【数据恢复】详解ORA-8103错误</a></li>
<li><a href='http://www.askmaclean.com/archives/build-rowid-workaround-1578-1410-8103.html' rel='bookmark' title='【数据恢复】利用构造ROWID实现无备份情况下绕过ORA-1578、ORA-8103、ORA-1410等逻辑/物理坏块问题'>【数据恢复】利用构造ROWID实现无备份情况下绕过ORA-1578、ORA-8103、ORA-1410等逻辑/物理坏块问题</a></li>
<li><a href='http://www.askmaclean.com/archives/%e6%95%b0%e6%8d%ae%e6%81%a2%e5%a4%8d%ef%bc%9a%e6%a8%a1%e6%8b%9f2%e4%b8%aa%e9%80%bb%e8%be%91%e5%9d%8f%e5%9d%97.html' rel='bookmark' title='数据恢复：模拟2个逻辑坏块'>数据恢复：模拟2个逻辑坏块</a></li>
<li><a href='http://www.askmaclean.com/archives/db-file-parallel-write.html' rel='bookmark' title='db file parallel write等待事件'>db file parallel write等待事件</a></li>
<li><a href='http://www.askmaclean.com/archives/rolling-a-standby-forward-using-an-rman-incremental-backup.html' rel='bookmark' title='Rolling a Standby Forward using an RMAN Incremental Backup'>Rolling a Standby Forward using an RMAN Incremental Backup</a></li>
<li><a href='http://www.askmaclean.com/archives/ora-600kghstack_free2kghstack_err0068.html' rel='bookmark' title='数据恢复:解决ORA-600[kghstack_free2][kghstack_err+0068]一例'>数据恢复:解决ORA-600[kghstack_free2][kghstack_err+0068]一例</a></li>
<li><a href='http://www.askmaclean.com/archives/know-more-about-redo-log-buffer-and-latches.html' rel='bookmark' title='Know more about redo log buffer and latches'>Know more about redo log buffer and latches</a></li>
<li><a href='http://www.askmaclean.com/archives/fail-to-queue-the-whole-fal-gap-in-dataguard%e4%b8%80%e4%be%8b.html' rel='bookmark' title='Fail to queue the whole FAL gap in dataguard一例'>Fail to queue the whole FAL gap in dataguard一例</a></li>
<li><a href='http://www.askmaclean.com/archives/oracle-supplemental-%e8%a1%a5%e5%85%a8%e6%97%a5%e5%bf%97%e4%bb%8b%e7%bb%8d.html' rel='bookmark' title='Oracle Supplemental 补全日志介绍'>Oracle Supplemental 补全日志介绍</a></li>
<li><a href='http://www.askmaclean.com/archives/overcome-ora-600-4xxx-open-database.html' rel='bookmark' title='【数据恢复】解决ORA-600[4xxx]错误并打开数据库'>【数据恢复】解决ORA-600[4xxx]错误并打开数据库</a></li>
</ol>
<img src='http://yarpp.org/pixels/2f0914cf788be644fb4af9949742b6ee'/>
</div>
]]></description>
				<content:encoded><![CDATA[<p>ORA-1410 invalid rows错误是与ORA-8103相似的Oracle数据库逻辑层面的讹误。</p>
<p>了解ORA-1410逻辑坏块问题的成因，以及有效的解决手段十分重要。</p>
<p>解决方案之一：</p>
<p>可以通过如下PL/SQL过程将健康数据复制到新建表中，对于问题数据块中的数据将被跳过，对于能够容忍数据丢失的场景可以考虑这样恢复，之后truncate 原表/分区并将健康数据加载进去。 具体的脚本见下面的链接：</p>
<p><a title="【数据恢复】利用构造ROWID实现无备份情况下绕过ORA-1578、ORA-8103、ORA-1410等逻辑/物理坏块问题" href="http://www.askmaclean.com/archives/build-rowid-workaround-1578-1410-8103.html" rel="bookmark">【数据恢复】利用构造ROWID实现无备份情况下绕过ORA-1578、ORA-8103、ORA-1410等逻辑/物理坏块问题</a></p>
<p>&nbsp;</p>
<p>oerr ora 1410<br />
01410, 00000, &#8220;invalid ROWID&#8221;<br />
// *Cause:<br />
// *Action:</p>
<p>如果对ORA-1410做errorstack 一般会看到下面的LOG:</p>
<p>OBJD MISMATCH typ=6, seg.obj=%d, diskobj=%d, dsflg=%d, dsobj=%d, tid=%d, cls=%d</p>
<p>&nbsp;</p>
<p>触发ORA-1410错误的stack call一般都是：  kcbgtcr=&gt;kcbzib=&gt;kcbz_check_objd_typ，即在对数据块做逻辑读时运行到kcbz_check_objd_typ函数时，检测到OBJD 不一致的问题。由于seg.obj和diskobj不一致，而10g以后的kcbz_check_objd_typ函数负责验证块上的objd是否mistmatch，若不一致则触发ORA-1410错误。</p>
<p>造成objd mimatch的主要可能有几种：</p>
<p>1、 写丢失 Lost Write， 写丢失造成相关数据块没有为现有对象正常格式化，导致虽然该数据块的checksum是正确的,但对应数据字典却是不一致的。 写丢失也可能由磁盘或卷组镜像同步软件的不完整复制造成。</p>
<p>&nbsp;</p>
<p>If the on-disk objd is &lt; kcbdsobj, then there is possibility of Oracle messing up or IO layer (OS Cache, Volume mgr etc) missing writes.</p>
<p>&nbsp;</p>
<p>对于Lost Write在10g版本中没有太好的预防方案，隐藏&#8221;_db_lost_write_checking&#8221;控制在DBWR写数据文件后立即去读被写的块以便检测出Lost Write，但是该参数对性能的损耗较大，不建议设置。</p>
<p>11g中引入了DB_LOST_WRITE_PROTECT参数配合Data Guard使用可以有效检测出Lost Write问题。</p>
<p>&nbsp;</p>
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td valign="top" width="680">DB_LOST_WRITE_PROTECT enables or disables lost write detection. A data block lost write occurs when an I/O subsystem acknowledges the completion of the block write, while in fact the write did not occur in the persistent storage.&nbsp;</p>
<p>When the parameter is set to TYPICAL on the primary database, the instance logs buffer cache reads for read-write tablespaces in the redo log, which is necessary for detection of lost writes.</p>
<p>&nbsp;</p>
<p>When the parameter is set to FULL on the primary database, the instance logs reads for read-only tablespaces as well as read-write tablespaces.</p>
<p>&nbsp;</p>
<p>When the parameter is set to TYPICAL or FULL on the standby database or on the primary database during media recovery, the instance performs lost write detection.</p>
<p>&nbsp;</p>
<p>When the parameter is set to NONE on either the primary database or the standby database, no lost write detection functionality is enabled.</td>
</tr>
</tbody>
</table>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>2、 一些DDL操作例如Exchange Partition 造成block级别的不一致，同一个数据块被2个数据对象所使用，而当这2个对象被使用时都可能覆盖问题数据块。 实际上这种情况也可能是Lost Write所引起的。</p>
<p>&nbsp;</p>
<p>3、 文档Summary Of Bugs Containing ORA 1410 (Doc ID 422771.1)介绍了引起ORA-1410的主要BUG，其中BUG 4592596(Corruption (ORA-1410) from multi-table insert with direct load) 和 BUG 3868753 (Concurrent export / INSERT of ASSM segment can fail with ORA-1410 / ORA-8103)均为对表的Direct path/Parallel INSERT引起后续对表的SELECT操作报ORA-1410错误。</p>
<p>这说明了Direct Path/Parallel Insert操作有小概率引发ORA-1410错误发生的可能，而常规的conventional insert则不会引发ORA-1410。</p>
<p>&nbsp;</p>
<p>4、 objd mimatch也可能仅仅是Oracle Buffer Cache内存中的block存在不一致，而Disk磁盘上的block仍是完好的。这一般是Oracle Buffer层的BUG引起的，对于该种现象一般flush buffer_cache即可解决问题。虽然在本例中flush buffer_cache未能解决问题，但是若问题仅仅发生在Memory层，则仍建议先考虑flush buffer_cache。</p>
<p>&nbsp;</p>
<p>针对该由于OBJD MISMATCH所引起的ORA-1410问题可以采取如下措施：</p>
<p>1、 尝试刷新buffer cache:</p>
<p>alter system flush buffer_cache;   ==&gt;如果是RAC建议2个实例都要flush</p>
<p>刷新后再次运行触发ORA-1410错误的语句，若不再报错则说明刷新BUFFER_CACHE有效</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>2、 若flush buffer_cache解决不了问题，那么做analyze validate structure 和收集errorstack操作，分析原因：</p>
<p>alter session set events &#8217;1410 trace  name errorstack  level 3&#8242;;</p>
<p>运行会触发ORA-1410的语句，收集生成的trace文件</p>
<p>analyze table XXX   validate structure online;  ==&gt;在线validate structure</p>
<p>@?/rdbms/admin/utlvaild   ==&gt;对于分区对象需要运行utlvaild脚本</p>
<p>analyze table XXX partition (partition_name) validate structure online;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>3、对于已经在磁盘上形成OBJD MISMATCH现象的数据对象：</p>
<p>a. 考虑通过move table、partition、subpartition来尝试解决该问题</p>
<p>alter table xxx move tablespace;</p>
<p>or</p>
<p>alter table move partition xxx tablespace;</p>
<p>or</p>
<p>alter table move sunpartition xxx tablespace;</p>
<p>&nbsp;</p>
<p>ORA-1410问题相关的一些BUG罗列如下:</p>
<p>&nbsp;<br />
<span style="font-family: terminal, monaco;">Bug 5637976</span><br />
<span style="font-family: terminal, monaco;">Abstract: ORA-8103/ORA-1410 from concurrent INSERT / export on ASSM tables</span><br />
<span style="font-family: terminal, monaco;">This occurs in 10gR2 when there are concurrent inserts and direct path exports. The newly created/updated blocks are not being flushed to disk, so the export is getting a stale version of the block from disk. </span><br />
<span style="font-family: terminal, monaco;">Fixed in 10.2.0.4 and 11.1.0.6</span></p>
<p><span style="font-family: terminal, monaco;">Unpublished Bug 4592596</span><br />
<span style="font-family: terminal, monaco;">Abstract: Corruption (ORA-1410) from multi-table insert with direct load </span><br />
<span style="font-family: terminal, monaco;">This error occurs if a SQL plan is compiled for a parallel run with a Degree of Parallelism (DOP) &gt; 1, but at the time of running, due to lack of resources, it runs serial. Then the problem of invalid rowid will happen. </span><br />
<span style="font-family: terminal, monaco;">Fixed in 10.2.0.4 and 11.1.0.6.</span></p>
<p><span style="font-family: terminal, monaco;">Bug 5596325</span><br />
<span style="font-family: terminal, monaco;">Abstract: Text query gives wrong results or fails with ORA-1410 ORA-29903 </span><br />
<span style="font-family: terminal, monaco;">If CONTAINS queries return ORA-1410: invalid rowid errors, and there are more than 200,000,000 documents in the index, then you may have encountered this bug. </span><br />
<span style="font-family: terminal, monaco;">Fixed in 10.2.0.4 and 11.1.0.6</span></p>
<p><span style="font-family: terminal, monaco;">Unpublished Bug 6444339</span><br />
<span style="font-family: terminal, monaco;">Abstract: TRUNCATE/PURGE DOES NOT CLEAN DEPENDENCIES PROPERLY.</span><br />
<span style="font-family: terminal, monaco;">DDL statements to an object were not invalidating all dependencies, so a stale rowid could remain in cache and produce a ORA-1410 if used.</span><br />
<span style="font-family: terminal, monaco;">Fixed in 11.2 and 10.2.0.5</span></p>
<p><span style="font-family: terminal, monaco;">Bug 8740993</span><br />
<span style="font-family: terminal, monaco;">Abstract: ORA-1410 OCCURRED ON ADG STANDBY DATABASE DURING TABLE SCAN.</span><br />
<span style="font-family: terminal, monaco;">This bug applies to standby databases and occurs when the standby is re-applying DDL for table drops/truncates/shrinks. The buffer cache is not being updated for the new object numbers.</span><br />
<span style="font-family: terminal, monaco;">Fixed in 12.1, 11.2.0.2</span></p>
<div class='yarpp-related-rss'>
<p>Related posts:</p><ol>
<li><a href='http://www.askmaclean.com/archives/ora-8103.html' rel='bookmark' title='【数据恢复】详解ORA-8103错误'>【数据恢复】详解ORA-8103错误</a></li>
<li><a href='http://www.askmaclean.com/archives/build-rowid-workaround-1578-1410-8103.html' rel='bookmark' title='【数据恢复】利用构造ROWID实现无备份情况下绕过ORA-1578、ORA-8103、ORA-1410等逻辑/物理坏块问题'>【数据恢复】利用构造ROWID实现无备份情况下绕过ORA-1578、ORA-8103、ORA-1410等逻辑/物理坏块问题</a></li>
<li><a href='http://www.askmaclean.com/archives/%e6%95%b0%e6%8d%ae%e6%81%a2%e5%a4%8d%ef%bc%9a%e6%a8%a1%e6%8b%9f2%e4%b8%aa%e9%80%bb%e8%be%91%e5%9d%8f%e5%9d%97.html' rel='bookmark' title='数据恢复：模拟2个逻辑坏块'>数据恢复：模拟2个逻辑坏块</a></li>
<li><a href='http://www.askmaclean.com/archives/db-file-parallel-write.html' rel='bookmark' title='db file parallel write等待事件'>db file parallel write等待事件</a></li>
<li><a href='http://www.askmaclean.com/archives/rolling-a-standby-forward-using-an-rman-incremental-backup.html' rel='bookmark' title='Rolling a Standby Forward using an RMAN Incremental Backup'>Rolling a Standby Forward using an RMAN Incremental Backup</a></li>
<li><a href='http://www.askmaclean.com/archives/ora-600kghstack_free2kghstack_err0068.html' rel='bookmark' title='数据恢复:解决ORA-600[kghstack_free2][kghstack_err+0068]一例'>数据恢复:解决ORA-600[kghstack_free2][kghstack_err+0068]一例</a></li>
<li><a href='http://www.askmaclean.com/archives/know-more-about-redo-log-buffer-and-latches.html' rel='bookmark' title='Know more about redo log buffer and latches'>Know more about redo log buffer and latches</a></li>
<li><a href='http://www.askmaclean.com/archives/fail-to-queue-the-whole-fal-gap-in-dataguard%e4%b8%80%e4%be%8b.html' rel='bookmark' title='Fail to queue the whole FAL gap in dataguard一例'>Fail to queue the whole FAL gap in dataguard一例</a></li>
<li><a href='http://www.askmaclean.com/archives/oracle-supplemental-%e8%a1%a5%e5%85%a8%e6%97%a5%e5%bf%97%e4%bb%8b%e7%bb%8d.html' rel='bookmark' title='Oracle Supplemental 补全日志介绍'>Oracle Supplemental 补全日志介绍</a></li>
<li><a href='http://www.askmaclean.com/archives/overcome-ora-600-4xxx-open-database.html' rel='bookmark' title='【数据恢复】解决ORA-600[4xxx]错误并打开数据库'>【数据恢复】解决ORA-600[4xxx]错误并打开数据库</a></li>
</ol>
<img src='http://yarpp.org/pixels/2f0914cf788be644fb4af9949742b6ee'/>
</div>
<img src="http://feeds.feedburner.com/~r/OracleClinic/~4/nXOdiraUVBs" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.askmaclean.com/archives/ora-1410.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.askmaclean.com/archives/ora-1410.html</feedburner:origLink></item>
		<item>
		<title>【转Oracle补丁】老托的Oracle 数据库Patch概念性小常识</title>
		<link>http://feedproxy.google.com/~r/OracleClinic/~3/9T4mLgEAPzs/oracle-patch.html</link>
		<comments>http://www.askmaclean.com/archives/oracle-patch.html#comments</comments>
		<pubDate>Sun, 28 Apr 2013 15:06:23 +0000</pubDate>
		<dc:creator>Maclean Liu</dc:creator>
				<category><![CDATA[Oracle]]></category>
		<category><![CDATA[Oracle补丁patch]]></category>

		<guid isPermaLink="false">http://www.askmaclean.com/?p=12287</guid>
		<description><![CDATA[老托的Oracle 数据库Patch概念性小常识，初学者可以参考该图 来了解Oracle中 补丁的分类知识， 感谢Oracle ALLSTARS群中的老托同学的分享。 也可以点击这里下载老托的Oracle 数据库Patch概念性小常识 &#160; 名称 说明 Release ¤ 标准产品发布。如Oracle Database 10g Release 2的第一个发行版本为10.2.0.1,可以在OTN、edelivery等站点上公开下载 Patch Set Release ¤ 就是早期大家常说的PSR。这是在主版本号上发布的补丁集，修复了较多的Bug，可能会包含一些增强功能（Enhancement）。比如11.2.0.1是一个主版本，那么11.2.0.2、11.2.0.3就是2个不同的Patch set。这种补丁集经过了严格的集成测试，也是累积型的。所以推荐安装最新的Patch Set。 Patch Set Update ¤ 就是DBA&#38;DMA们常论道的PSU。Oracle 选取在每个季度用户下载数量最多，并且得到验证具有较低风险的补丁放入到每个季度的PSU中，修复比较严重的一些问题，包含每个季度的CPU，是累积型的。虽然在描述PSU的时候会用到数据库版本第5位，比如Database PSU 11.2.0.3.5，但实际上打完PSU后并不会真正改变数据库的版本，从v$version中看到的版本还是4位的(11.2.0.3.0)，第5位仍然是0。 ¤ 注意 (1)Windows上没有CPU和PSU，对于Windows和Exadata，Oracle使用Bundle Patch代替PSU，Bundle Patch会包含PSU的内容 (2)从11.2.0.2版本开始，一个新的补丁策略被引入，11.2.0.1之后发布的Patch Set本身就是一个完整的安装包，不再需要基础的Release 版本安装。 Critical Patch Update ¤ 这个指的就是CPU补丁。每季度发布一次，用来修复安全方面的一些补丁，是累积型的。目前(2012年10月）已经更名为Security Patch Update (SPU) ¤ 这类问题本来不属于软件错误,在正常使用中不会出现任何问题。但是别有用心的人可以通过运行非常精巧设计的代码 ，绕过数据库系统的安全管理机制,达到非授权存取的目的。 ¤ 重要补丁公告参见这里. Interim [...]<div class='yarpp-related-rss'>

Related posts:<ol>
<li><a href='http://www.askmaclean.com/archives/critical-patch-update-july-2012.html' rel='bookmark' title='甲骨文发布2012 7月数据库安全补丁Critical Patch Update July 2012'>甲骨文发布2012 7月数据库安全补丁Critical Patch Update July 2012</a></li>
<li><a href='http://www.askmaclean.com/archives/oracle-patchset-patch-id-number-quick-index.html' rel='bookmark' title='Oracle补丁集的补丁号Patch ID/Number速查'>Oracle补丁集的补丁号Patch ID/Number速查</a></li>
<li><a href='http://www.askmaclean.com/archives/oracle%e6%95%b0%e6%8d%ae%e5%ba%93%e7%89%88%e6%9c%ac10-2%e5%ae%9e%e9%99%85%e8%bf%9b%e5%85%a5%e6%89%a9%e5%b1%95%e6%94%af%e6%8c%81extended-support%e5%91%a8%e6%9c%9f.html' rel='bookmark' title='Oracle数据库版本10.2实际进入扩展支持Extended Support周期'>Oracle数据库版本10.2实际进入扩展支持Extended Support周期</a></li>
<li><a href='http://www.askmaclean.com/archives/oct-12-patch-set-update-released.html' rel='bookmark' title='Oct 12: Patch Set Update Released'>Oct 12: Patch Set Update Released</a></li>
<li><a href='http://www.askmaclean.com/archives/exadata-database-machine-host%e7%9a%84%e6%93%8d%e4%bd%9c%e7%b3%bb%e7%bb%9fos%e7%89%88%e6%9c%ac.html' rel='bookmark' title='Exadata Database Machine Host的操作系统OS版本'>Exadata Database Machine Host的操作系统OS版本</a></li>
<li><a href='http://www.askmaclean.com/archives/install-1120305-14727347-gi.html' rel='bookmark' title='RAC Grid Infrastructure安装11.2.0.3.5 14727347 PSU GI-RDBMS补丁'>RAC Grid Infrastructure安装11.2.0.3.5 14727347 PSU GI-RDBMS补丁</a></li>
</ol>
<img src='http://yarpp.org/pixels/2f0914cf788be644fb4af9949742b6ee'/>
</div>
]]></description>
				<content:encoded><![CDATA[<p>老托的Oracle 数据库Patch概念性小常识，初学者可以参考该图 来了解Oracle中 补丁的分类知识， 感谢Oracle ALLSTARS群中的老托同学的分享。</p>
<p><a href="http://www.askmaclean.com/wp-content/uploads/2013/04/托马斯张的Oracle-数据库Patch概念性小常识.pdf">也可以点击这里下载老托的Oracle 数据库Patch概念性小常识</a></p>
<p>&nbsp;</p>
<table width="100%" border="1" cellspacing="0" cellpadding="0">
<thead>
<tr>
<td width="19%">
<p align="center"><b>名称</b></p>
</td>
<td width="79%">
<p align="center"><b>说明</b></p>
</td>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" width="19%">
<p align="left"><b>R</b>elease</p>
</td>
<td valign="top" width="79%">
<p align="left">¤ 标准产品发布。如Oracle Database 10g Release 2的第一个发行版本为10.2.0.1,可以在OTN、edelivery等站点上公开下载</p>
</td>
</tr>
<tr>
<td valign="top" width="19%">
<p align="left"><b>P</b>atch <b>S</b>et <b>R</b>elease</p>
</td>
<td valign="top" width="79%">
<p align="left">¤ 就是早期大家常说的<b>PSR</b>。这是在主版本号上发布的补丁集，修复了较多的Bug，可能会包含一些增强功能（Enhancement）。比如11.2.0.1是一个主版本，那么11.2.0.2、11.2.0.3就是2个不同的Patch set。这种补丁集经过了严格的集成测试，也是累积型的。所以推荐安装最新的Patch Set。</p>
</td>
</tr>
<tr>
<td valign="top" width="19%">
<p align="left"><b>P</b>atch <b>S</b>et <b>U</b>pdate</p>
</td>
<td valign="top" width="79%">
<p align="left">¤ 就是DBA&amp;DMA们常论道的<b>PSU</b>。Oracle 选取在每个季度用户下载数量最多，并且得到验证具有较低风险的补丁放入到<b>每个季度的PSU</b>中，修复比较严重的一些问题，包含每个季度的CPU，是累积型的。虽然在描述PSU的时候会用到数据库版本第5位，比如Database PSU 11.2.0.3.5，但实际上打完PSU后并不会真正改变数据库的版本，从v$version中看到的版本还是4位的(11.2.0.3.0)，第5位仍然是<b>0</b>。</p>
<p align="left">
<p align="left">¤ <b>注意</b></p>
<p align="left">(1)Windows上没有CPU和PSU，对于Windows和Exadata，Oracle使用<b>B</b>undle <b>P</b>atch代替PSU，<b>B</b>undle <b>P</b>atch会包含PSU的内容</p>
<p align="left">(2)从11.2.0.2版本开始，一个新的补丁策略被引入，11.2.0.1之后发布的Patch Set本身就是一个完整的安装包，不再需要基础的Release 版本安装。</p>
</td>
</tr>
<tr>
<td valign="top" width="19%">
<p align="left"><b>C</b>ritical<b> P</b>atch <b>U</b>pdate</p>
</td>
<td valign="top" width="79%">
<p align="left">¤ 这个指的就是<b>CPU</b>补丁。每季度发布一次，用来修复<b>安全</b>方面的一些补丁，是累积型的。目前(2012年10月）已经更名为<b>Security Patch Update</b> (<b>SPU</b>)</p>
<p align="left">¤ 这类问题本来不属于软件错误,在正常使用中不会出现任何问题。但是别有用心的人可以通过运行非常精巧设计的代码 ，绕过数据库系统的安全管理机制,达到非授权存取的目的。</p>
<p align="left">¤ 重要补丁公告参见<a href="http://www.oracle.com/technetwork/cn/topics/security/alerts-100385-zhs.html">这里</a>.</p>
</td>
</tr>
<tr>
<td valign="top" width="19%">
<p align="left"><b>I</b>nterim <b>P</b>atch/<b>O</b>ne-<b>O</b>ff <b>P</b>atch</p>
</td>
<td valign="top" width="79%">
<p align="left">¤ 是我们常说的小补丁，为了修复某(几)个Bug而发布的补丁。这种补丁推荐在测试库上测试无误后再安装在生产库上。</p>
</td>
</tr>
<tr>
<td valign="top" width="19%">
<p align="left"><b>M</b>erged <b>P</b>atch</p>
</td>
<td valign="top" width="79%">
<p align="left">¤ 合并的补丁。当几个小补丁之间有冲突，不能同时安装的时候，需要提供这种Merged Patch。补丁冲突主要是由于2个或者多个补丁修改同一个文件，但是修改的内容是不同的。</p>
</td>
</tr>
<tr>
<td valign="top" width="19%">
<p align="left"><b>B</b>undle <b>P</b>atch(BP)</p>
</td>
<td valign="top" width="79%">
<p align="left">¤ 补丁集，修复多个Bug。在<b>Windows</b><b>平台</b>上的Oracle没有小补丁，只有这种<b>B</b>undle <b>P</b>atch。 这种累积型的补丁集会周期性的发布（至少每季一次）,也就是每个<b>B</b>undle <b>P</b>atch会包含之前所有的<b>B</b>undle <b>P</b>atch。比如Windows Bundle Patch 16，它会包含之前所有15个Bundle Patch，所以我们总是推荐安装最新的Bundle Patch。<b>Oracle的集群软件和数据库软件的Window Bundle Patch是同一个</b>，比如Windows Bundle Patch 16(补丁号16167942，既可以打在集群上，也可以打在数据库上) 。</p>
<p>■要了解<b>Windows Bundle Patch</b>的补丁号，可以参考MOS文档：<br />
Note 161549.1 Oracle Database, Networking and Grid Agent Patches for Microsoft Platforms</p>
<p align="left">■这部分有待补充</p>
</td>
</tr>
<tr>
<td valign="top" width="19%">
<p align="left"><b>D</b>iagnostic <b>P</b>atch</p>
</td>
<td valign="top" width="79%">
<p align="left"><b>诊断补丁</b>。顾名思义，这类补丁不是用来解决问题的，而是用来寻找问题的原因的。这类补丁只在Oracle技术支持部门要求安装时，才需要安装。在得到需要的诊断信息后 ，应立即卸载这一补丁。</p>
</td>
</tr>
<tr>
<td valign="top" width="19%">
<p align="left"><b>C</b>omposite <b>P</b>atch</p>
</td>
<td valign="top" width="79%">
<p align="left">¤ 从2012年4月份的<b>Database PSU 11.2.0.3.2</b>和<b>11.2.0.2.0.7</b>开始，推出一种新的概念叫<b>Composite Patches</b>。 这是一种新型的补丁包，它不同于其他的累积型补丁包。如果是第一次安装Composite Patches，那么该Composite Patches所包括的全部补丁都会被安装，后续安装的Composite Patches，只会安装对比前一次Composite Patches有变化的部分和新增加的补丁。</p>
<p align="left">¤ <b>Composite Patche</b>的<b>改进</b>包括减少补丁安装时间，减少回滚以前应用的overlay patches的需要。 新的<b>Composite Patches</b>格式，使以前PSU应用的overlay patches和新安装的PSU并存成为可能。更多信息，请参考<span style="text-decoration: underline;">Document 1376691.1</span> &#8216;Composite Patches for Oracle Products&#8217; 和<a href="https://support.us.oracle.com/oip/faces/secure/km/DocumentDisplay.jspx?id=1452270.1">Oracle Database Support NEWS April edition</a>.</p>
<p align="left">
<p align="left">■ PSU就是一种Composite Patch</p>
<p align="left">     ¤第一次安装的composite patch为PSU 11.2.0.3.5：<br />
Installed Top-level Products (1):</p>
<p>Oracle Database 11g 11.2.0.3.0<br />
There are 1 products installed in this Oracle Home.</p>
<p align="left">     Interim patches (1) :</p>
<p>Patch 14727310: applied on Fri Dec 09 10:59:28 EST 2011<br />
Patch Description: &#8220;Database Patch Set Update : 11.2.0.3.5 (14727310)&#8221;<b>     &lt;</b><b>==</b><b>变化和新增的部分</b><br />
Created on 14 Jan 2013, 07:56:00 hrs PST8PDT<br />
Sub-patch 14275605; &#8220;Database Patch Set Update : 11.2.0.3.4 (14275605)&#8221;<b>&lt;</b><b>==Sub-patch</b></p>
<p align="left">     Sub-patch 13923374; &#8220;Database Patch Set Update : 11.2.0.3.3 (13923374)&#8221;<b>&lt;</b><b>==Sub-patch</b><br />
Sub-patch 13696216; &#8220;Database Patch Set Update : 11.2.0.3.2 (13696216)&#8221;<b>&lt;</b><b>==Sub-patch</b><br />
Sub-patch 13343438; &#8220;Database Patch Set Update : 11.2.0.3.1 (13343438)&#8221;<b>&lt;</b><b>==Sub-patch</b><br />
Bugs fixed:<br />
13566938, 13593999, 10350832, 14138130 &#8230;<br />
¤安装下一个composite patch PSU 11.2.0.3.6时，只需要安装有变化的部分和新增加的patches，不需要再安装之前已经安装的11.2.0.3.1 、11.2.0.3.2,11.2.0.3.4和11.2.0.3.5，之前已经安装的这部分就称为<b>sub-patch</b>：<br />
Patch 16056266: applied on Sun Apr 28 12:42:57 CST 2013<br />
Patch Description: &#8220;Database Patch Set Update : 11.2.0.3.6 (16056266)&#8221;      <b>&lt;</b><b>==</b><b>变化和新增的部分</b><br />
Created on 12 Mar 2013, 02:14:47 hrs PST8PDT<br />
Sub-patch 14727310; &#8220;Database Patch Set Update : 11.2.0.3.5 (14727310)&#8221;<b>&lt;</b><b>==Sub-patch</b></p>
<p align="left">     Sub-patch 14275605; &#8220;Database Patch Set Update : 11.2.0.3.4 (14275605)&#8221;<b>&lt;</b><b>==Sub-patch</b></p>
<p align="left">     Sub-patch 13923374; &#8220;Database Patch Set Update : 11.2.0.3.3 (13923374)&#8221;<b>&lt;</b><b>==Sub-patch</b><br />
Sub-patch 13696216; &#8220;Database Patch Set Update : 11.2.0.3.2 (13696216)&#8221;<b>&lt;</b><b>==Sub-patch</b><br />
Sub-patch 13343438; &#8220;Database Patch Set Update : 11.2.0.3.1 (13343438)&#8221;<b>&lt;</b><b>==Sub-patch</b></p>
<p align="left">       Bugs fixed:<br />
13616375, 14035825, 12861463, 12834027, 15862021, 13632809, 13377816 &#8230;<br />
¤在MOS文档中有针对Composite Patches详细的说明：Note 1376691.1 Composite Patches for Oracle Products</p>
</td>
</tr>
</tbody>
</table>
<p align="left"><b>参考知识</b>：可以参考下面的MOS文档了解每个季度的<b>CPU</b>、<b>PSU</b>、<b>Windows Bundle Patch</b>的具体补丁号：</p>
<p align="left">                Note 1454618.1 Quick Reference to Patch Numbers for Database PSU, SPU(CPU), Bundle Patches and Patchsets</p>
<p>&nbsp;</p>
<p style="text-align: center;"><a href="http://www.askmaclean.com/wp-content/uploads/2013/04/Oracle-Patch种类.jpg"><img class="aligncenter  wp-image-12288" alt="Oracle Patch种类" src="http://www.askmaclean.com/wp-content/uploads/2013/04/Oracle-Patch种类.jpg" width="799" height="941" /></a></p>
<div class='yarpp-related-rss'>
<p>Related posts:</p><ol>
<li><a href='http://www.askmaclean.com/archives/critical-patch-update-july-2012.html' rel='bookmark' title='甲骨文发布2012 7月数据库安全补丁Critical Patch Update July 2012'>甲骨文发布2012 7月数据库安全补丁Critical Patch Update July 2012</a></li>
<li><a href='http://www.askmaclean.com/archives/oracle-patchset-patch-id-number-quick-index.html' rel='bookmark' title='Oracle补丁集的补丁号Patch ID/Number速查'>Oracle补丁集的补丁号Patch ID/Number速查</a></li>
<li><a href='http://www.askmaclean.com/archives/oracle%e6%95%b0%e6%8d%ae%e5%ba%93%e7%89%88%e6%9c%ac10-2%e5%ae%9e%e9%99%85%e8%bf%9b%e5%85%a5%e6%89%a9%e5%b1%95%e6%94%af%e6%8c%81extended-support%e5%91%a8%e6%9c%9f.html' rel='bookmark' title='Oracle数据库版本10.2实际进入扩展支持Extended Support周期'>Oracle数据库版本10.2实际进入扩展支持Extended Support周期</a></li>
<li><a href='http://www.askmaclean.com/archives/oct-12-patch-set-update-released.html' rel='bookmark' title='Oct 12: Patch Set Update Released'>Oct 12: Patch Set Update Released</a></li>
<li><a href='http://www.askmaclean.com/archives/exadata-database-machine-host%e7%9a%84%e6%93%8d%e4%bd%9c%e7%b3%bb%e7%bb%9fos%e7%89%88%e6%9c%ac.html' rel='bookmark' title='Exadata Database Machine Host的操作系统OS版本'>Exadata Database Machine Host的操作系统OS版本</a></li>
<li><a href='http://www.askmaclean.com/archives/install-1120305-14727347-gi.html' rel='bookmark' title='RAC Grid Infrastructure安装11.2.0.3.5 14727347 PSU GI-RDBMS补丁'>RAC Grid Infrastructure安装11.2.0.3.5 14727347 PSU GI-RDBMS补丁</a></li>
</ol>
<img src='http://yarpp.org/pixels/2f0914cf788be644fb4af9949742b6ee'/>
</div>
<img src="http://feeds.feedburner.com/~r/OracleClinic/~4/9T4mLgEAPzs" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.askmaclean.com/archives/oracle-patch.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.askmaclean.com/archives/oracle-patch.html</feedburner:origLink></item>
	</channel>
</rss><!-- Dynamic page generated in 0.667 seconds. --><!-- Cached page generated by WP-Super-Cache on 2013-05-24 09:23:35 --><!-- Compression = gzip -->
