<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	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/"
	>

<channel>
	<title>天行健，君子以自强不息</title>
	<atom:link href="http://www.rickyzhu.com/feed" rel="self" type="application/rss+xml" />
	<link>http://www.rickyzhu.com</link>
	<description>质量，数据库和我的生活</description>
	<lastBuildDate>Fri, 16 Mar 2012 16:31:18 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Oracle RAT介绍及最佳实践</title>
		<link>http://www.rickyzhu.com/2335_oracle-rat.html?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=oracle-rat</link>
		<comments>http://www.rickyzhu.com/2335_oracle-rat.html#comments</comments>
		<pubDate>Fri, 16 Mar 2012 16:31:18 +0000</pubDate>
		<dc:creator>ricky.zhu</dc:creator>
				<category><![CDATA[数据库]]></category>
		<category><![CDATA[rat; oracle]]></category>

		<guid isPermaLink="false">http://www.rickyzhu.com/?p=2335</guid>
		<description><![CDATA[Oracle Real Application Testing（简称RAT）是11g的一个重要的feature，其推出的初衷是为了满足数据中心变更后有很好的方法和工具去衡量这些变更对于生产环境的应用带来的影响，更好的评估诸如硬件升级，软件升级，架构变化等等对于客户应用程序的影响。 Real Application Testing其实有两个解决方法，分别是Database Replay和SPA（SQL Performance Analyzer）。 Database Replay，数据库回放顾名思义可以理解为一个录像机，通过在源系统上把实时应用产生的负载录制下来，并拿到变更后的环境进行播放，从而进行一个对比。数据库回放分为四个阶段完成：录制、预处理、回放、结果分析和报告。 SPA就是针对更细颗粒的SQL给出变更前后的执行结果，并进行分析和建议。SPA一般配合在数据库回放中进行使用。 下面重点介绍数据库回放中的四个步骤如何完成。 1. 录制（为了支持老版本的数据库，RAT提供了一个打开捕捉的开关参数，在10.2的环境也可以使用） 1.1 首先创建一个操作系统目录，用于存放录制的文件 1.2 在数据库中创建一个目录，用于跟OS的目录对应： create or replace directory &#8220;sample_cap_dirobj&#8221; as &#8216;/tmp/sample_cap_dir&#8217;; 1.3 设置捕捉的过滤条件，有时候我们需要限定只捕捉部分的工作负载，可以通过这个设置来达成： exec dbms_workload_capture.add_filter( &#8216;sample_cap_filter&#8217;, &#8216;&#8216;, &#8216;[VALUE]&#8216;); 比如，只捕捉SCOTT用户的负载： exec dbms_workload_capture.add_filter(&#8216;sample_cap_filter2&#8242;, &#8216;USER&#8217;, &#8216;SCOTT&#8217;); 1.4 &#8230;<p class="read-more"><a href="http://www.rickyzhu.com/2335_oracle-rat.html">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Oracle Real Application Testing（简称RAT）是11g的一个重要的feature，其推出的初衷是为了满足数据中心变更后有很好的方法和工具去衡量这些变更对于生产环境的应用带来的影响，更好的评估诸如硬件升级，软件升级，架构变化等等对于客户应用程序的影响。</p>
<p>Real Application Testing其实有两个解决方法，分别是Database Replay和SPA（SQL Performance Analyzer）。</p>
<p>Database Replay，数据库回放顾名思义可以理解为一个录像机，通过在源系统上把实时应用产生的负载录制下来，并拿到变更后的环境进行播放，从而进行一个对比。数据库回放分为四个阶段完成：录制、预处理、回放、结果分析和报告。</p>
<p>SPA就是针对更细颗粒的SQL给出变更前后的执行结果，并进行分析和建议。SPA一般配合在数据库回放中进行使用。</p>
<p>下面重点介绍数据库回放中的四个步骤如何完成。</p>
<p>1. 录制（为了支持老版本的数据库，RAT提供了一个打开捕捉的开关参数，在10.2的环境也可以使用）</p>
<p>1.1 首先创建一个操作系统目录，用于存放录制的文件<br />
1.2 在数据库中创建一个目录，用于跟OS的目录对应：</p>
<p>create or replace directory &#8220;sample_cap_dirobj&#8221; as &#8216;/tmp/sample_cap_dir&#8217;;</p>
<p>1.3 设置捕捉的过滤条件，有时候我们需要限定只捕捉部分的工作负载，可以通过这个设置来达成：</p>
<p>exec dbms_workload_capture.add_filter(<br />
  &#8216;sample_cap_filter&#8217;,<br />
  &#8216;<instance_number /USER/MODULE/ACTION/PROGRAM/SERVICE>&#8216;,<br />
  &#8216;[VALUE]&#8216;);</p>
<p>比如，只捕捉SCOTT用户的负载：<br />
exec dbms_workload_capture.add_filter(&#8216;sample_cap_filter2&#8242;, &#8216;USER&#8217;, &#8216;SCOTT&#8217;);</p>
<p>1.4 检查下限定条件设定的是否正确：<br />
select type, name, attribute, status, value from dba_workload_filters;</p>
<p>1.5 开始捕捉：<br />
exec dbms_workload_capture.start_capture(&#8216;sample_cap_name&#8217;, &#8216;sample_cap_dirobj&#8217;, NULL, &#8216;INCLUDE&#8217;);</p>
<p>1.6 使用下面的视图检查当前的捕捉情况和状态：</p>
<p>select name, directory, status, start_time, end_time, duration_secs, errors<br />
from dba_workload_captures;</p>
<p>一般情况，捕捉的时候如果没有设定捕捉的时长，就需要通过手工的命令进行停止。</p>
<p>1.7 停止捕捉：<br />
exec dbms_workload_capture.finish_capture;</p>
<p>1.8 为了分析变更前后的负载运行情况，推荐在捕捉结束之后进行导入一个AWR报告：<br />
declare<br />
  capture_id number;<br />
begin<br />
  select max(id) into capture_id<br />
  from dba_workload_captures<br />
  where status = &#8216;COMPLETED&#8217;;</p>
<p>  dbms_workload_capture.export_awr(capture_id);<br />
end;<br />
/</p>
<p>2 预处理（预处理之前需要把捕捉好的文件copy到变更后的环境，预处理的数据库版本需要跟回放的版本保持一致）</p>
<p>2.1 同样创建一个目录的对象指向目标环境的录制后的文件</p>
<p>create or replace directory &#8220;sample_rep_dirobj&#8221; as &#8216;/tmp/sample_rep_dir&#8217;;</p>
<p>2.2 预处理：</p>
<p>exec dbms_workload_replay.process_capture(&#8216;sample_rep_dirobj&#8217;);</p>
<p>2.3 初始化播放：</p>
<p>exec dbms_workload_replay.initialize_replay(&#8216;sample_rep_name&#8217;, &#8216;sample_rep_dirobj&#8217;);</p>
<p>2.4 如果播放环境和捕捉环境数据库配置不同，则需要进行一个映射的过程：</p>
<p>exec dbms_workload_replay.remap_connection(<connection_id>, &#8216;<replay_connection>&#8216;);</p>
<p>比如：<br />
exec dbms_workload_replay.remap_connection(1, &#8216;(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=sample_host)(PORT=1234))(CONNECT_DATA=(SERVICE_NAME=sample_sid)))&#8217;);</p>
<p>2.5 设置播放模式，可以支持同步和异步两种方式：</p>
<p>exec dbms_workload_replay.prepare_replay(synchronization => TRUE, connect_time_scale => 100, think_time_scale => 100, think_time_auto_correct => FALSE);</p>
<p>3 回放（需要准备好相应的客户端，包括启动客户端和开始回放两个步骤）<br />
3.1 准备客户端（RAT提供了客户端的工具wrc，位于ORACLE_HOME/bin/目录下）</p>
<p>根据工作负载的强度大小，准备相应的客户端，可以使用wrc的评估模式来衡量大约需要多少客户端。</p>
<p>$ORACLE_HOME/bin/wrc <username>/
<password> mode=calibrate replaydir=/tmp/sample_rep_dir</p>
<p>3.2 启动客户端：这个时候客户端属于就绪状态，等待播放开始</p>
<p>$ORACLE_HOME/bin/wrc <username>/
<password> replaydir=/tmp/sample_rep_dir</p>
<p>3.3 开始播放：</p>
<p>exec dbms_workload_replay.start_replay;</p>
<p>3.4 播放结束</p>
<p>exec dbms_workload_replay.cancel_replay;</p>
<p>4. 报告和分析<br />
4.1 分别导入捕捉和回放时候的AWR：</p>
<p>select dbms_workload_capture.import_awr(<capture_id>, &#8216;SYSTEM&#8217;) from dual;<br />
select dbms_workload_replay.import_awr(<replay_id>, &#8216;SYSTEM&#8217;) from dual;</p>
<p>4.2 查看捕捉和回放时候的报告：</p>
<p>select dbms_workload_capture.report(<capture_id>, &#8216;TEXT&#8217;) from dual;<br />
select dbms_workload_replay.report(<replay_id>, &#8216;TEXT&#8217;) from dual;</p>
<p>上面全部是通过命令行的方式来完成的Database Replay的过程。如果你熟悉EM的操作，通过EM来完成同样的工作更加简单，而且直观，Oracle也是推荐你通过EM的方法来完成捕捉，准备，回放和报告的。</p>
<p></replay_id></capture_id></replay_id></capture_id></password></username></password></username></replay_connection></connection_id></instance_number></p>
<h3  class="related_post_title">Related Posts</h3><ul class="related_post"><li><a href="http://www.rickyzhu.com/248_oracle-11g-will-be-release.html" title="Oracle 11g即将发布">Oracle 11g即将发布</a> (0)</li><li><a href="http://www.rickyzhu.com/2143_solaris-ipmp.html" title="Solaris IPMP">Solaris IPMP</a> (1)</li><li><a href="http://www.rickyzhu.com/354_why-using-oracle-rac.html" title="为什么要用Oracle RAC">为什么要用Oracle RAC</a> (1)</li><li><a href="http://www.rickyzhu.com/282_san-nas-and-das.html" title="SAN,NAS,DAS及其架构之间区别">SAN,NAS,DAS及其架构之间区别</a> (1)</li><li><a href="http://www.rickyzhu.com/2164_simple-survey.html" title="简单的调查">简单的调查</a> (0)</li><li><a href="http://www.rickyzhu.com/2317_oracle-shenzhen-job-list.html" title="Oracle Shenzhen Job List">Oracle Shenzhen Job List</a> (5)</li><li><a href="http://www.rickyzhu.com/720_my-200th-bug.html" title="My 200th bug">My 200th bug</a> (6)</li><li><a href="http://www.rickyzhu.com/29_solution-for-open-source-testing-tool.html" title="开源测试工具的完整解决方案">开源测试工具的完整解决方案</a> (0)</li><li><a href="http://www.rickyzhu.com/523_ocp-training-day2.html" title="Oracle Database 10g WorkshopII (Day2)">Oracle Database 10g WorkshopII (Day2)</a> (1)</li><li><a href="http://www.rickyzhu.com/103_how-to-use-loadrunner-analysis-seven.html" title="利用LoadRunner进行性能测试和结果分析(连载七)">利用LoadRunner进行性能测试和结果分析(连载七)</a> (3)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.rickyzhu.com/2335_oracle-rat.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Oracle大师Thomas Kyte</title>
		<link>http://www.rickyzhu.com/2330_tom-and-ricky.html?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=tom-and-ricky</link>
		<comments>http://www.rickyzhu.com/2330_tom-and-ricky.html#comments</comments>
		<pubDate>Wed, 22 Feb 2012 07:19:25 +0000</pubDate>
		<dc:creator>ricky.zhu</dc:creator>
				<category><![CDATA[数据库]]></category>

		<guid isPermaLink="false">http://www.rickyzhu.com/?p=2330</guid>
		<description><![CDATA[这次来北京做项目，有幸遇到Oracle大师Thomas Kyte (就是asktom背后的那个的Tom大师）。 Tom大师这次的中国之行还包括北京和上海等地的巡回活动，详细可以参考ACOUG的网站介绍。 跟大师的合影（2012.2.20) Tom and Ricky Related Posts利用LoadRunner进行性能测试和结果分析(连载二) (2)Linux/Solair对时间的处理 (1)读书笔记-软件质量保证合同评审 (2)庆祝访问量突破1000大关 (0)建立系统测试流程的总体思路 (2)微软测试工程师怎么看测试 (1)如何利用Google Analysis优化你的个人网站 (4)什么时候走遍中国 (3)回归测试概念和策略 (0)TCL语言的进制转换 (4)]]></description>
			<content:encoded><![CDATA[<p>这次来北京做项目，有幸遇到Oracle大师Thomas Kyte (就是asktom背后的那个的Tom大师）。</p>
<p>Tom大师这次的中国之行还包括北京和上海等地的巡回活动，详细可以参考<a href="http://acoug.org">ACOUG</a>的网站介绍。</p>
<p>跟大师的合影（2012.2.20)</p>
<p>Tom and Ricky<br />
<a href="http://www.flickr.com/photos/rickyzhu/6914649063/" title="IMGP0266 by ricky.zhu, on Flickr"><img src="http://farm8.staticflickr.com/7206/6914649063_86c1b8aabc_z.jpg" width="640" height="480" alt="IMGP0266"/></a></p>
<h3  class="related_post_title">Related Posts</h3><ul class="related_post"><li><a href="http://www.rickyzhu.com/2279_odi-lang-setting.html" title="ODI界面设置">ODI界面设置</a> (1)</li><li><a href="http://www.rickyzhu.com/192_zhuxiayu-can-walk.html" title="小猪猪会走了">小猪猪会走了</a> (2)</li><li><a href="http://www.rickyzhu.com/160_my-site-is-blocked.html" title="可怜我的网站">可怜我的网站</a> (5)</li><li><a href="http://www.rickyzhu.com/528_get-the-ocp.html" title="Get my OCP today">Get my OCP today</a> (9)</li><li><a href="http://www.rickyzhu.com/2019_oracle-hq.html" title="Oracle HQ">Oracle HQ</a> (3)</li><li><a href="http://www.rickyzhu.com/439_testing-special.html" title="首届软件测试工程师专场招聘会">首届软件测试工程师专场招聘会</a> (1)</li><li><a href="http://www.rickyzhu.com/283_fruit-and-vega-word.html" title="学习几个常见的英文单词">学习几个常见的英文单词</a> (2)</li><li><a href="http://www.rickyzhu.com/262_hongkong-return-10-years.html" title="十年感悟">十年感悟</a> (5)</li><li><a href="http://www.rickyzhu.com/464_buy-car.html" title="我买车了">我买车了</a> (19)</li><li><a href="http://www.rickyzhu.com/186_case-four-of-loadrunner.html" title="LoadRunner案例分析之四">LoadRunner案例分析之四</a> (4)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.rickyzhu.com/2330_tom-and-ricky.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Oracle Shenzhen Job List</title>
		<link>http://www.rickyzhu.com/2317_oracle-shenzhen-job-list.html?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=oracle-shenzhen-job-list</link>
		<comments>http://www.rickyzhu.com/2317_oracle-shenzhen-job-list.html#comments</comments>
		<pubDate>Tue, 10 Jan 2012 14:41:31 +0000</pubDate>
		<dc:creator>ricky.zhu</dc:creator>
				<category><![CDATA[求职招聘]]></category>
		<category><![CDATA[Hiring]]></category>

		<guid isPermaLink="false">http://www.rickyzhu.com/?p=2317</guid>
		<description><![CDATA[下面是近期Oracle Shenzhen的职位列表，覆盖了销售，售前，销售顾问，研发等等。产品覆盖了应用，中间件和数据库产品。 有兴趣请发mail至 ricky[dot]zhu[at]gmail[dot]com所要详细JD。 如果对其他城市的职位感兴趣，也可以直接发简历到上述邮箱。 [2012年1月] ID209404: Solution Specialist SZ ID221076: System Sales Consultant SZ/GZ ID221903: Senior Sales Consultant &#8211; DB SZ/GZ ID217291: China Account manager &#8211; Huawei SZ/GZ ID209640: Huawei/ZTE Account Architect SZ/HK ID220137: Strategic Sales Manager &#8211; Huawei &#8230;<p class="read-more"><a href="http://www.rickyzhu.com/2317_oracle-shenzhen-job-list.html">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>下面是近期Oracle Shenzhen的职位列表，覆盖了销售，售前，销售顾问，研发等等。产品覆盖了应用，中间件和数据库产品。<br />
有兴趣请发mail至 ricky[dot]zhu[at]gmail[dot]com所要详细JD。<br />
如果对其他城市的职位感兴趣，也可以直接发简历到上述邮箱。</p>
<p>[2012年1月]</p>
<p>ID209404: Solution Specialist SZ<br />
ID221076: System Sales Consultant SZ/GZ<br />
ID221903: Senior Sales Consultant &#8211; DB SZ/GZ<br />
ID217291: China Account manager &#8211; Huawei SZ/GZ<br />
ID209640: Huawei/ZTE Account Architect SZ/HK<br />
ID220137: Strategic Sales Manager &#8211; Huawei SZ/HK<br />
ID216267: Oracle Linux and VM Sales Consultant HK/SZ<br />
ID204838: Consulting Sales Manager-MRD SZ/GZ<br />
ID212513: Principal (Senior) Database Architect SZ<br />
ID210826: Sr. Technical Analyst (Oracle DB) SZ<br />
ID221346: SOA Software Specialist / Architect &#8211; Fusion Middleware SZ<br />
ID221350: ACS Solution Consultant SZ/GZ<br />
ID221483: i-Flex Senior/Principal Technical Consultant SZ<br />
ID221468: i-Flex Core Banking Senior/Principal Functional Consultant SZ<br />
ID221467: Database Kernel Java Developer SZ<br />
ID220279: (Senior) Member of Technical Staff SZ<br />
ID218879: Sr. Linux Engineer SZ<br />
ID218221: OFA Product Manager SZ<br />
ID216591: Member of Technical Staff &#8211; ST SZ<br />
ID216594: Warehouse Builder Engineer SZ/BJ<br />
ID215879: EM QA Analyst SZ<br />
ID214715: (Senior) Member of Technical Staff &#8211; (Real Application Clusters)  SZ<br />
ID204653: (Senior) Application Developer &#8211; Financial Application Developments SZ<br />
ID213875: (Senior) Software Engineer (Java/J2EE, C) SZ<br />
ID207679: EBS Applications Engineer SZ<br />
ID216596: ATG &#8211; Apps DBA SZ<br />
ID221067: ATG &#8211; Product Lead SZ<br />
ID221900: Senior QA Engineer &#8211; ITT SZ<br />
ID221901: EBS SCM QA SZ<br />
ID216595: RAC, (Senior) Member of Technical Staff SZ<br />
ID216806: (Senior) Member of Technical Staff SZ<br />
ID214044: iTech Pre-sales Consultant (Japanese Speaking) SZ<br />
ID217300: Senior Sales Consultant &#8211; FMW SZ<br />
ID217301: Senior Sales Consultant &#8211; DB SZ<br />
ID218186: Senior Sales Consultant &#8211; DB Security SZ<br />
ID218187: Senior Sales Consultant &#8211; EM/Cloud SZ<br />
ID220227: Java Developer &#8211; iTech Presales Consultant SZ<br />
ID221746: Principal Sales Consultant &#8211; Data Modeling Analysis SZ<br />
ID221747: Senior Sales Consultant &#8211; R Language SZ </p>
<h3  class="related_post_title">Related Posts</h3><ul class="related_post"><li><a href="http://www.rickyzhu.com/33_bottleneck-of-the-china-software-testing-engineer.html" title="国内软件测试工程师职业发展瓶颈分析">国内软件测试工程师职业发展瓶颈分析</a> (0)</li><li><a href="http://www.rickyzhu.com/14_practice-of-test-automation.html" title="软件测试自动化之实践">软件测试自动化之实践</a> (0)</li><li><a href="http://www.rickyzhu.com/34_be-a-it-how-to-change-your-job.html" title="做IT这行的如何跳槽">做IT这行的如何跳槽</a> (0)</li><li><a href="http://www.rickyzhu.com/2028_iphone-3gs.html" title="入手iPhone 3GS">入手iPhone 3GS</a> (13)</li><li><a href="http://www.rickyzhu.com/131_suitable-language-for-test-automation.html" title="实施自动化测试最合适的语言">实施自动化测试最合适的语言</a> (3)</li><li><a href="http://www.rickyzhu.com/159_what-is-ms-engineer-attitude-for-testing.html" title="微软测试工程师怎么看测试">微软测试工程师怎么看测试</a> (1)</li><li><a href="http://www.rickyzhu.com/129_quick-introduce-to-ab.html" title="Apache压力测试工具ab介绍">Apache压力测试工具ab介绍</a> (0)</li><li><a href="http://www.rickyzhu.com/228_oracle-architect.html" title="ORACLE体系结构">ORACLE体系结构</a> (0)</li><li><a href="http://www.rickyzhu.com/90_loadrunner-cpc-exam-result.html" title="CPC认证考试结果出来了">CPC认证考试结果出来了</a> (0)</li><li><a href="http://www.rickyzhu.com/2125_defect-management.html" title="缺陷工作流程和缺陷报告">缺陷工作流程和缺陷报告</a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.rickyzhu.com/2317_oracle-shenzhen-job-list.html/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>霸气侧漏</title>
		<link>http://www.rickyzhu.com/2315_2012-annualdinner.html?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=2012-annualdinner</link>
		<comments>http://www.rickyzhu.com/2315_2012-annualdinner.html#comments</comments>
		<pubDate>Thu, 22 Dec 2011 08:27:59 +0000</pubDate>
		<dc:creator>ricky.zhu</dc:creator>
				<category><![CDATA[生活点滴]]></category>
		<category><![CDATA[Other]]></category>

		<guid isPermaLink="false">http://www.rickyzhu.com/?p=2315</guid>
		<description><![CDATA[许多年不贴照片了！ 许多年不上台了！ 年度最佳节目都选上了，哥没啥低调的了，上照片！ Related Posts2011第一天 (0)简单的调查 (0)UT江湖 (3)新书推荐 (1)极速卡丁车 (0)从头开始 (15)地球一小时 (0)警惕短信新骗局 (6)什么是逻辑 (5)UT CEO敲响闭市钟声 (0)]]></description>
			<content:encoded><![CDATA[<p>许多年不贴照片了！<br />
许多年不上台了！<br />
年度最佳节目都选上了，哥没啥低调的了，上照片！</p>
<p><a href="http://www.flickr.com/photos/rickyzhu/6553020433/" title="IMG_1353 by ricky.zhu, on Flickr"><img src="http://farm8.staticflickr.com/7006/6553020433_de4f1e542d_z.jpg" width="640" height="426" alt="IMG_1353"/></a></p>
<p><a href="http://www.flickr.com/photos/rickyzhu/6553020821/" title="IMG_1354 by ricky.zhu, on Flickr"><img src="http://farm8.staticflickr.com/7007/6553020821_bc7d20d6b9_z.jpg" width="640" height="426" alt="IMG_1354"/></a></p>
<p><a href="http://www.flickr.com/photos/rickyzhu/6553023955/" title="IMG_1373 by ricky.zhu, on Flickr"><img src="http://farm8.staticflickr.com/7153/6553023955_3c1944f9e3_z.jpg" width="640" height="426" alt="IMG_1373"/></a></p>
<p><a href="http://www.flickr.com/photos/rickyzhu/6552997673/" title="IMG_1326 by ricky.zhu, on Flickr"><img src="http://farm8.staticflickr.com/7024/6552997673_49e7c5c0aa_z.jpg" width="640" height="427" alt="IMG_1326"/></a></p>
<h3  class="related_post_title">Related Posts</h3><ul class="related_post"><li><a href="http://www.rickyzhu.com/2182_2011%e7%ac%ac%e4%b8%80%e5%a4%a9.html" title="2011第一天">2011第一天</a> (0)</li><li><a href="http://www.rickyzhu.com/2164_simple-survey.html" title="简单的调查">简单的调查</a> (0)</li><li><a href="http://www.rickyzhu.com/2006_ut-2010.html" title="UT江湖">UT江湖</a> (3)</li><li><a href="http://www.rickyzhu.com/1834_monito.html" title="新书推荐">新书推荐</a> (1)</li><li><a href="http://www.rickyzhu.com/912_karting-of-shenzhen.html" title="极速卡丁车">极速卡丁车</a> (0)</li><li><a href="http://www.rickyzhu.com/834_from-the-head.html" title="从头开始">从头开始</a> (15)</li><li><a href="http://www.rickyzhu.com/739_earth-hour.html" title="地球一小时">地球一小时</a> (0)</li><li><a href="http://www.rickyzhu.com/520_sms-trick.html" title="警惕短信新骗局">警惕短信新骗局</a> (6)</li><li><a href="http://www.rickyzhu.com/491_rabbit-story.html" title="什么是逻辑">什么是逻辑</a> (5)</li><li><a href="http://www.rickyzhu.com/468_ut-exit-nasdaq.html" title="UT CEO敲响闭市钟声">UT CEO敲响闭市钟声</a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.rickyzhu.com/2315_2012-annualdinner.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>如何在11gR2 RAC上配置GoldenGate (下）</title>
		<link>http://www.rickyzhu.com/2311_config-ha-goldengate.html?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=config-ha-goldengate</link>
		<comments>http://www.rickyzhu.com/2311_config-ha-goldengate.html#comments</comments>
		<pubDate>Thu, 22 Dec 2011 08:10:42 +0000</pubDate>
		<dc:creator>ricky.zhu</dc:creator>
				<category><![CDATA[数据库]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[rac]]></category>

		<guid isPermaLink="false">http://www.rickyzhu.com/?p=2311</guid>
		<description><![CDATA[上回书说到在11gR2上配置GoldenGate，今天应要求继续贴出下篇，下面的步骤是针对GoldenGate的HA配置 第一步 Add VIP resource for OGG 1. Create new VIP resource, use IP address 10.245.48.47 as example, login as root and run: # /u01/app/11.2.0/grid/bin/appvipcfg create -network=1 -ip=10.245.48.47 -vipname=ggatevip -user=root NOTE 1: '/u01/app/11.2.0/grid' is the default Oracle GRID infrastructure software &#8230;<p class="read-more"><a href="http://www.rickyzhu.com/2311_config-ha-goldengate.html">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>上回书说到在11gR2上配置GoldenGate，今天应要求继续贴出下篇，下面的步骤是针对GoldenGate的HA配置</p>
<p>第一步 Add VIP resource for OGG </p>
<pre class="brush: bash; gutter: true; first-line: 1; highlight: []; html-script: false">

1. Create new VIP resource, use IP address 10.245.48.47 as example, login as root and run:
# /u01/app/11.2.0/grid/bin/appvipcfg create -network=1 -ip=10.245.48.47 -vipname=ggatevip -user=root

NOTE 1: '/u01/app/11.2.0/grid' is the default Oracle GRID infrastructure software directory.
NOTE 2: The example VIP resource name is 'ggatevip' and will be used in the rest of this document.
NOTE 3: -network refers to the network number, default value is '1'.

And you can find the network number using this command:

# /u01/app/11.2.0/grid/bin/crsctl stat res -p |grep -ie .network -ie
subnet |grep -ie name -ie subnet
NAME=ora.net1.network
USR_ORA_SUBNET=10.245.48.0
net1 indicates this is network 1, and the second line indicates the subnet on which the VIP will be created.

2. Allow oracle user to start the VIP, run this command as root:
# /u01/app/11.2.0/grid/bin/crsctl setperm resource ggatevip -u user:oracle:r-x

3. Log on as oracle user, start the VIP resource:
$ /u01/app/11.2.0/grid/bin/crsctl start resource ggatevip

4. Validate VIP is running:
$ /u01/app/11.2.0/grid/bin/crsctl status resource ggatevip
NAME=ggatevip
TYPE=app.appvip.type
TARGET=ONLINE
STATE=ONLINE on node452

NOTE: The TARGET and STATE should both be ONLINE.

5. Ping the VIP's IP address(10.245.48.47) and make sure it's reachable.
NOTE: If you also prefer to set up HA on target system, follow the same steps, and make necessary changes to directory, VIP resource name, IP address, etc.
</pre>
<p>第二步 Develop an agent script</p>
<pre class="brush: bash; gutter: true; first-line: 1; highlight: []; html-script: false">

1. Save the script in a file 11gr2_gg_action.scr and copy it to OGG directory.
NOTE: Make necessary changes to GGS_HOME(OGG directory) and ORACLE_HOME.

2. Make sure the script is executable:
$ chmod +x 11gr2_gg_action.scr
</pre>
<p>NOTE: If you also prefer to set up HA on target system, follow the same steps, and make necessary changes to GGS_HOME, ORACLE_HOME in this file.</p>
<p>第三步 Register OGG resource in Oracle Clusterware</p>
<pre class="brush: bash; gutter: true; first-line: 1; highlight: []; html-script: false">

1. Register OGG as a resource in Oracle Clusterware:
$ /u01/app/11.2.0/grid/bin/crsctl add resource ggateapp -type cluster_resource -attr "ACTION_SCRIPT=/cloudfs/goldengate/11gr2_gg_action.scr, \
CHECK_INTERVAL=30, START_DEPENDENCIES='hard(ggatevip,ora.ggdb.db) \
pullup(ggatevip)', STOP_DEPENDENCIES='hard(ggatevip)'"

NOTE 1: 'ggateapp' is the example OGG resource name and will be used in the rest of this document.
NOTE 2: 'ora.ggdb.db' is the resource name for database 'ggdb'.

2. Check the ggateapp resource is available as Oracle Clusterware resource:
$ /u01/app/11.2.0/grid/bin/crsctl status resource ggateapp
NAME=ggateapp
TYPE=cluster_resource
TARGET=OFFLINE
STATE=OFFLINE
</pre>
<p>NOTE: If you also prefer to set up HA on target system, follow the same steps, and make necessary changes to directory, VIP and database resource<br />
name, etc.</p>
<p>第四步 Start the OGG resource</p>
<pre class="brush: bash; gutter: true; first-line: 1; highlight: []; html-script: false">
1. Start the resource, from now on you should always use Oracle Clusterware to start OGG:

$ /u01/app/11.2.0/grid/bin/crsctl start resource ggateapp

2. Check the status of OGG resource:
$ /u01/app/11.2.0/grid/bin/crsctl status resource ggateapp
NAME=ggateapp
TYPE=cluster_resource
TARGET=ONLINE
STATE=ONLINE on node452
NOTE: TARGET and STATE should both be ONLINE.

3. Check status of OGG processes:
GGSCI > info all
Program Status Group Lag
Time Since Chkpt
MANAGER RUNNING
EXTRACT RUNNING MYEXT 00:00:07
00:00:04
EXTRACT RUNNING MYPUMP 00:00:00 0
0:00:05
</pre>
<p>NOTE: If you also prefer to set up HA on target system, follow the same steps.</p>
<p>第五步. Test OGG resource failover</p>
<pre class="brush: bash; gutter: true; first-line: 1; highlight: []; html-script: false">

1. Log on to node source node as oracle user:
$ /u01/app/11.2.0/grid/bin/crsctl relocate resource ggateapp -f
CRS-2673: Attempting to stop 'ggateapp' on 'node452'
CRS-2677: Stop of 'ggateapp' on 'node452' succeeded
CRS-2673: Attempting to stop 'ggatevip' on 'node452'
CRS-2677: Stop of 'ggatevip' on 'node452' succeeded
CRS-2672: Attempting to start 'ggatevip' on 'node453'
CRS-2676: Start of 'ggatevip' on 'node453' succeeded
CRS-2672: Attempting to start 'ggateapp' on 'node453'
CRS-2676: Start of 'ggateapp' on 'node453' succeeded

2. Check the status of OGG resource:
$ /u01/app/11.2.0/grid/bin/crsctl status resource ggateapp
NAME=ggateapp
TYPE=cluster_resource
TARGET=ONLINE
STATE=ONLINE on node453

NOTE: TARGET and STATE should both be ONLINE on node453.

3. Log on to another node 'node453' in this example as oracle user, go to OGG directory.

4. Set up LD_LIBRARY_PATH as described in Section 1, start GGSCI program:
$ ggsci

5. Check status of OGG processes:
GGSCI > info all
Program Status Group Lag
Time Since Chkpt
MANAGER RUNNING
EXTRACT RUNNING MYEXT 00:00:09 0
0:00:04
EXTRACT RUNNING MYPUMP 00:00:00 0
0:00:05
</pre>
<p>NOTE: If you also prefer to set up HA on target system, follow the same steps, and make necessary changes to directory, etc.</p>
<p>如下是script的详细代码</p>
<pre class="brush: bash; gutter: true; first-line: 1; highlight: []; html-script: false">

#!/bin/sh
#set the Oracle Goldengate installation directory
export GGS_HOME=/cloudfs/goldengate
#set the oracle home to the database to ensure GoldenGate will get the
#right environment settings to be able to connect to the database
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1
#specify delay after start before checking for successful start
start_delay_secs=5
#Include the GoldenGate home in the library path to start GGSCI
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:${GGS_HOME}:${LD_LIBRARY_PATH}
#check_process validates that a manager process is running at the PID
#that GoldenGate specifies.

check_process () {
if ( [ -f "${GGS_HOME}/dirpcs/MGR.pcm" ] )
then
  pid=`cut -f8 "${GGS_HOME}/dirpcs/MGR.pcm"`
  if [ ${pid} = `ps -e |grep ${pid} |grep mgr |cut -d " " -f2` ]
  then
    #manager process is running on the PID exit success
    exit 0
  else
  if [ ${pid} = `ps -e |grep ${pid} |grep mgr |cut -d " " -f1` ]
  then
    #manager process is running on the PID exit success
    exit 0
  else
    #manager process is not running on the PID
    exit 1
  fi
fi
else
  #manager is not running because there is no PID file
  exit 1
fi
}

#call_ggsci is a generic routine that executes a ggsci command
call_ggsci () {
  ggsci_command=$1
  ggsci_output=`${GGS_HOME}/ggsci < < EOF
  ${ggsci_command}
  exit
  EOF`
}

case $1 in
'start')
  #start manager
  call_ggsci 'start manager'
  #there is a small delay between issuing the start manager command
  #and the process being spawned on the OS. wait before checking
  sleep ${start_delay_secs}
  #check whether manager is running and exit accordingly
  check_process
  ;;
'stop')
  #attempt a clean stop for all non-manager processes
  #call_ggsci 'stop er *'
  #ensure everything is stopped
  call_ggsci 'stop er *!'
  #call_ggsci 'kill er *'
  #stop manager without (y/n) confirmation
  call_ggsci 'stop manager!'
  #exit success
  exit 0
  ;;
'check')
  check_process
  ;;
'clean')
  #attempt a clean stop for all non-manager processes
  #call_ggsci 'stop er *'
  #ensure everything is stopped
  #call_ggsci 'stop er *!'
  #in case there are lingering processes
  call_ggsci 'kill er *'
  #stop manager without (y/n) confirmation
  call_ggsci 'stop manager!'
  #exit success
  exit 0
  ;;
'abort')
  #ensure everything is stopped
  call_ggsci 'stop er *!'
  #in case there are lingering processes
  call_ggsci 'kill er *'
  #stop manager without (y/n) confirmation
  call_ggsci 'stop manager!'
  #exit success
  exit 0
  ;;
esac
</pre>
</pre>
<h3  class="related_post_title">Related Posts</h3><ul class="related_post"><li><a href="http://www.rickyzhu.com/2292_srvctl-start-db.html" title="srvctl起停Oracle实例内幕">srvctl起停Oracle实例内幕</a> (2)</li><li><a href="http://www.rickyzhu.com/2119_modify-11gr2-resource-attr.html" title="如何修改Oracle 11gR2中的资源属性">如何修改Oracle 11gR2中的资源属性</a> (0)</li><li><a href="http://www.rickyzhu.com/915_11-2-crs-resource.html" title="Oracle Database 11gR2 Clusterware之资源">Oracle Database 11gR2 Clusterware之资源</a> (0)</li><li><a href="http://www.rickyzhu.com/898_11-2-crsprocesses.html" title="Oracle Database 11gR2 Clusterware之后台进程">Oracle Database 11gR2 Clusterware之后台进程</a> (1)</li><li><a href="http://www.rickyzhu.com/882_troubleshoot-crs-10204-1.html" title="Troubleshoot CRS 10.2.0.4 on EL5 (1)">Troubleshoot CRS 10.2.0.4 on EL5 (1)</a> (1)</li><li><a href="http://www.rickyzhu.com/829_install-10g-rac-on-rhel5.html" title="如何在RHEL5上安装Oracle RAC 10g">如何在RHEL5上安装Oracle RAC 10g</a> (7)</li><li><a href="http://www.rickyzhu.com/755_oracle-utility-deinstall-tool.html" title="Oracle CRS/RAC Utilities-Deinstall tool">Oracle CRS/RAC Utilities-Deinstall tool</a> (1)</li><li><a href="http://www.rickyzhu.com/752_oracle-utility-ostool.html" title="Oracle CRS/RAC Utility-OSTool">Oracle CRS/RAC Utility-OSTool</a> (1)</li><li><a href="http://www.rickyzhu.com/743_oracle-rac-team-hiring-urgent.html" title="Oracle RAC Team Hiring-Urgent">Oracle RAC Team Hiring-Urgent</a> (4)</li><li><a href="http://www.rickyzhu.com/676_oracle-utility-cluvfy.html" title="Oracle Clusterware Utility-Cluvfy">Oracle Clusterware Utility-Cluvfy</a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.rickyzhu.com/2311_config-ha-goldengate.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RAC知识问与答</title>
		<link>http://www.rickyzhu.com/2307_rac%e7%9f%a5%e8%af%86%e9%97%ae%e4%b8%8e%e7%ad%94.html?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=rac%25e7%259f%25a5%25e8%25af%2586%25e9%2597%25ae%25e4%25b8%258e%25e7%25ad%2594</link>
		<comments>http://www.rickyzhu.com/2307_rac%e7%9f%a5%e8%af%86%e9%97%ae%e4%b8%8e%e7%ad%94.html#comments</comments>
		<pubDate>Wed, 21 Dec 2011 13:36:24 +0000</pubDate>
		<dc:creator>ricky.zhu</dc:creator>
				<category><![CDATA[生活点滴]]></category>
		<category><![CDATA[Oracle]]></category>

		<guid isPermaLink="false">http://www.rickyzhu.com/?p=2307</guid>
		<description><![CDATA[之前申请过一个短域名，一直没想好怎么用起来&#8230; 前两天晚上抽空的时候利用Vanilla做了一个内容管理系统 Oracle RAC Q&#038;A (http://racqa.com/f) (QA本意是Quality and Assurance，亦作Question &#038; Answer) 刚开始主要是我自己自问自答的形式，大家有兴趣可以提问，当然如果有人帮忙回答更是十分感谢了&#8230; 看效果，呵呵，如果人气不旺，最后也许就变成我自己的自留地和知识管理平台了。 let&#8217;s see! Related Posts如何在11gR2 RAC上配置GoldenGate (下） (0)srvctl起停Oracle实例内幕 (2)Solaris IPMP for Oracle RAC public network (0)用SQLPLUS解决数独问题 (0)ORA-600案例一则 (0)The secret behind root.sh in 11gR2 (0)Oracle这些年的并购 (2)Oracle RAC Team招聘 (0)如何修改Oracle &#8230;<p class="read-more"><a href="http://www.rickyzhu.com/2307_rac%e7%9f%a5%e8%af%86%e9%97%ae%e4%b8%8e%e7%ad%94.html">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>之前申请过一个<a href="http://racqa.com/f">短域名</a>，一直没想好怎么用起来&#8230;</p>
<p>前两天晚上抽空的时候利用Vanilla做了一个内容管理系统 Oracle RAC Q&#038;A (<a href="http://racqa.com/f">http://racqa.com/f</a>) (QA本意是Quality and Assurance，亦作Question &#038; Answer)</p>
<p>刚开始主要是我自己自问自答的形式，大家有兴趣可以提问，当然如果有人帮忙回答更是十分感谢了&#8230;</p>
<p>看效果，呵呵，如果人气不旺，最后也许就变成我自己的自留地和知识管理平台了。 </p>
<p>let&#8217;s see!</p>
<h3  class="related_post_title">Related Posts</h3><ul class="related_post"><li><a href="http://www.rickyzhu.com/2311_config-ha-goldengate.html" title="如何在11gR2 RAC上配置GoldenGate (下）">如何在11gR2 RAC上配置GoldenGate (下）</a> (0)</li><li><a href="http://www.rickyzhu.com/2292_srvctl-start-db.html" title="srvctl起停Oracle实例内幕">srvctl起停Oracle实例内幕</a> (2)</li><li><a href="http://www.rickyzhu.com/2238_solaris-ipmp-for-oracle-rac-public-network.html" title="Solaris IPMP for Oracle RAC public network">Solaris IPMP for Oracle RAC public network</a> (0)</li><li><a href="http://www.rickyzhu.com/2235_sqlplus-sudoku.html" title="用SQLPLUS解决数独问题">用SQLPLUS解决数独问题</a> (0)</li><li><a href="http://www.rickyzhu.com/2210_ora600-case.html" title="ORA-600案例一则">ORA-600案例一则</a> (0)</li><li><a href="http://www.rickyzhu.com/2200_rootsh-sceret.html" title="The secret behind root.sh in 11gR2">The secret behind root.sh in 11gR2</a> (0)</li><li><a href="http://www.rickyzhu.com/2130_oracle%e8%bf%99%e4%ba%9b%e5%b9%b4%e7%9a%84%e5%b9%b6%e8%b4%ad.html" title="Oracle这些年的并购">Oracle这些年的并购</a> (2)</li><li><a href="http://www.rickyzhu.com/2127_rac-shenzhen-hiring.html" title="Oracle RAC Team招聘">Oracle RAC Team招聘</a> (0)</li><li><a href="http://www.rickyzhu.com/2119_modify-11gr2-resource-attr.html" title="如何修改Oracle 11gR2中的资源属性">如何修改Oracle 11gR2中的资源属性</a> (0)</li><li><a href="http://www.rickyzhu.com/2100_oracle-real-world-performance-group.html" title="Oracle Real World Performance Group">Oracle Real World Performance Group</a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.rickyzhu.com/2307_rac%e7%9f%a5%e8%af%86%e9%97%ae%e4%b8%8e%e7%ad%94.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>如何在11gR2 RAC上配置GoldenGate (上）</title>
		<link>http://www.rickyzhu.com/2299_goldengate-on-rac.html?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=goldengate-on-rac</link>
		<comments>http://www.rickyzhu.com/2299_goldengate-on-rac.html#comments</comments>
		<pubDate>Sun, 04 Dec 2011 08:11:21 +0000</pubDate>
		<dc:creator>ricky.zhu</dc:creator>
				<category><![CDATA[数据库]]></category>
		<category><![CDATA[GoldenGate]]></category>
		<category><![CDATA[raac]]></category>

		<guid isPermaLink="false">http://www.rickyzhu.com/?p=2299</guid>
		<description><![CDATA[Oracle 11gR2 RAC和GoldenGate都是Oracle比较热门的产品，经过简单的学习和阅读文档，配置单节点的GoldenGate进行数据的复制相信不是什么太有难度的事情，但是对于利用GoldenGate进行RAC系统到RAC系统的复制，还是有些配置的技巧和策略设置的，前阵子就遇到一个这样一个问题：假设源和目标分别是两节点的RAC系统，如何保证目标部分节点失效的时候replicate会自动切换？ 其实如果了解GG的工作机制和RAC的资源管理，问题的解决就十分清晰了。 今天就从系统的介绍下11gR2 RAC上OGG (Oracle GoldenGate的简称，下同)的完整配置步骤，并简单谈谈如何解决上面这个场景的问题。 第一阶段：下载OGG（可以参考之前的单节点的复制例子，不再赘述） OGG的下载地址 第二阶段：OGG的安装 1）登录源端的RAC系统中的任一个节点，并在ACFS上建立一个供OGG使用的共享目录，比如叫/cloudfs/goldengate 2）解压OGG的安装包到/cloudfs/goldengate目录 3) 设置好OGG工作的环境变量，比如 export LIBRARY_PATH=/cloudfs/goldengate:$ORACLE_HOME/lib:$LD_LIBRARY_PATH 4）启动ggsci并创建目录，然后进行必要的设置，启动manager $ ggsci GGSCI > create subdirs (optional, support for DDL/Sequence) Create and edit the parameter file for GLOBALS: GGSCI > EDIT PARAMS &#8230;<p class="read-more"><a href="http://www.rickyzhu.com/2299_goldengate-on-rac.html">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>Oracle 11gR2 RAC和GoldenGate都是Oracle比较热门的产品，经过简单的学习和阅读文档，配置单节点的GoldenGate进行数据的复制相信不是什么太有难度的事情，但是对于利用GoldenGate进行RAC系统到RAC系统的复制，还是有些配置的技巧和策略设置的，前阵子就遇到一个这样一个问题：假设源和目标分别是两节点的RAC系统，如何保证目标部分节点失效的时候replicate会自动切换？ 其实如果了解GG的工作机制和RAC的资源管理，问题的解决就十分清晰了。</p>
<p>今天就从系统的介绍下11gR2 RAC上OGG (Oracle GoldenGate的简称，下同)的完整配置步骤，并简单谈谈如何解决上面这个场景的问题。</p>
<p>第一阶段：下载OGG（可以参考之前的单节点的复制例子，不再赘述）<br />
<a href="http://www.oracle.com/technetwork/middleware/goldengate/overview/inde x.html">OGG的下载地址</a></p>
<p>第二阶段：OGG的安装</p>
<p>1）登录源端的RAC系统中的任一个节点，并在ACFS上建立一个供OGG使用的共享目录，比如叫/cloudfs/goldengate</p>
<p>2）解压OGG的安装包到/cloudfs/goldengate目录</p>
<p>3) 设置好OGG工作的环境变量，比如</p>
<p>export LIBRARY_PATH=/cloudfs/goldengate:$ORACLE_HOME/lib:$LD_LIBRARY_PATH</p>
<p>4）启动ggsci并创建目录，然后进行必要的设置，启动manager</p>
<pre class="brush: bash; gutter: true; first-line: 1; highlight: []; html-script: false">
$ ggsci

GGSCI > create subdirs

(optional, support for DDL/Sequence)
Create and edit the parameter file for GLOBALS:

GGSCI > EDIT PARAMS ./GLOBALS
Add this line to GLOBALS parameter file:

GGSCHEMA ggs

NOTE: 'ggs' is the example OGG user and will be used in the rest of this document.

GGSCI > EDIT PARAMS mgr

Add the following lines to Manager parameter file:

PORT 7809
AUTOSTART ER *
AUTORESTART ER *

GGSCI > START mgr
</pre>
<p>5）在目标端重复上面的步骤1-4，注意目录名的使用，我们在目标端使用/mycloudfs/goldengate以示区分。</p>
<p>第三阶段：源和目标RAC数据库准备步骤</p>
<pre class="brush: bash; gutter: true; first-line: 1; highlight: []; html-script: false">

1） Create OGG user 'ggs' on both the source and target database, connect to database using SQL*Plus as SYSDBA:

SQL> CREATE USER ggs IDENTIFIED BY ggs;
SQL> GRANT CONNECT,RESOURCE,DBA TO ggs;

2）(optional, add Oracle sequence replication support) On both source and target database, go to OGG directory and run this SQL, enter OGG user 'ggs' as prompted:
SQL> @sequence.sql

3） Enable supplemental logging on source ODA database:
SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;
SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (PRIMARY KEY) COLUMNS;
SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (UNIQUE) COLUMNS;
SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (FOREIGN KEY) COLUMNS;
SQL> ALTER SYSTEM SWITCH LOGFILE;

(Optional) Add Oracle DDL replication support
4） On the source system, go to OGG directory, connect to database using SQL*Plus as SYSDBA.

SQL> GRANT EXECUTE ON utl_file TO ggs;

5 On the source system, run the following script, provide OGG user 'ggs' as prompted.

SQL> @marker_setup.sql
SQL> @ddl_setup.sql

NOTE: enter 'INITIALSETUP' when prompted for the mode of installation.

SQL> @role_setup.sql
SQL> @ddl_enable.sql
SQL> @ddl_pin ggs

NOTE: 'ggs' here is the OGG user.
</pre>
<p>第四阶段：配置源端的extract group</p>
<pre class="brush: bash; gutter: true; first-line: 1; highlight: []; html-script: false">
1） Issue the following command to log on to the database.
GGSCI > DBLOGIN USERID ggs, PASSWORD ggs

2） Create a primary Extract group 'myext':

GGSCI > ADD EXTRACT myext, TRANLOG, BEGIN NOW, THREADS 2
NOTE: THREADS value is the number of your RAC instances.

3） Create a local trail. The primary Extract writes to this trail, and the data-pump Extract reads it.

GGSCI > ADD EXTTRAIL /cloudfs/goldengate/dirdat/et, EXTRACT myext
NOTE: 'et' is the example trail identifier for Extract 'myext'.

4） Create and edit the parameter file for Extract 'myext':

GGSCI > EDIT PARAMS myext
Add following lines to this parameter file:

EXTRACT myext
SETENV (ORACLE_HOME = "/u01/app/oracle/product/11.2.0/dbhome_1")
USERID ggs@ggdb, PASSWORD ggs
TRANLOGOPTIONS DBLOGREADER
THREADOPTIONS MAXCOMMITPROPAGATIONDELAY 20000
EXTTRAIL /cloudfs/goldengate/dirdat/et
DYNAMICRESOLUTION
DDL INCLUDE ALL
TABLE hr.*;

NOTE 1: make sure the SQL*Net connection string 'ggdb' works.
NOTE 2: 'hr' is the example schema which will be synchronized to the target system.
</pre>
<p>第五阶段：在源端配置data pump extract group</p>
<pre class="brush: bash; gutter: true; first-line: 1; highlight: []; html-script: false">
1）Create a data pump group 'mypump':
GGSCI > ADD EXTRACT mypump, EXTTRAILSOURCE /cloudfs/goldengate/dirdat/et, BEGIN now

2） Specify a remote trail that will be created on the target system.

GGSCI > ADD RMTTRAIL /mycloudfs/goldengate/dirdat/rt, EXTRACT mypump
NOTE: 'rt' is the example trail identifier for Extract 'mypump', and use the target OGG directory '/mycloudfs/goldengate' here.

3） Create and edit the parameter file for Extract 'mypump':
GGSCI > EDIT PARAMS mypump

Add following lines to this parameter file:

EXTRACT mypump
RMTHOST rac12box-scan, MGRPORT 7809
RMTTRAIL /mycloudfs/goldengate/dirdat/rt
PASSTHRU
TABLE hr.*;

NOTE: RMTHOST is the target host. If you also prefer to set up HA on the target system, specify the VIP for your target system as RMTHOST,
otherwise just use the IP address/hostname of your target system.

4） Start Extract 'myext' and 'mypump':

GGSCI > START myext
GGSCI > START mypump

5） Check the status of OGG processes:
GGSCI > info all
</pre>
<p>第六阶段：在目标端配置Replicat group</p>
<pre class="brush: bash; gutter: true; first-line: 1; highlight: []; html-script: false">
1） Create a Replicat group 'rept', which reads trails from Extract 'mypump':

GGSCI > ADD REPLICAT rept, EXTTRAIL /mycloudfs/goldengate/dirdat/rt, nodbcheckpoint

2） Create and edit the parameter file for Replicat 'rept':

GGSCI > EDIT PARAMS rept
Add following lines to this parameter file, assume the same ORACLE_HOME and target database 'ggdb' as in source ODA environment:

REPLICAT rept
SETENV (ORACLE_HOME = "/u01/app/oracle/product/11.2.0/dbhome_1")
USERID ggs@ggdb,PASSWORD ggs
ASSUMETARGETDEFS
HANDLECOLLISIONS
REPERROR (DEFAULT, DISCARD)
DDLERROR DEFAULT DISCARD
DDLOPTIONS REPORT
DISCARDFILE /mycloudfs/goldengate/repsz.dsc,append,megabytes 100
MAP hr.*, TARGET hr.*;

NOTE: make sure the SQL*Net connection string 'ggdb' works.

3） Start Replicat 'rept':

GGSCI > START rept

4） Check the status of OGG processes:
GGSCI > info all
</pre>
<p>第七阶段：验证Goldengate功能</p>
<pre class="brush: bash; gutter: true; first-line: 1; highlight: []; html-script: false">
1） Log on to source database as user 'hr', do some simple DDL and DML operations.
2） Check the data change has been captured by Extract on source system:

GGSCI > STATS myext
GGSCI > STATS mypump

3）Log on to target system as oracle user, check the status of Replicat 'rept':

GGSCI > STATS rept

4） Compare the output and make sure data change is synchronized.
5）(optional, for further HA setup) Stop OGG on source system:

GGSCI > STOP myext
GGSCI > STOP mypump
GGSCI > STOP mgr

6）(optional, for further HA setup) Stop OGG on target system:

GGSCI > STOP rept
GGSCI > STOP mgr
</pre>
<p>关于HA的设置，请继续关注下篇。</p>
<h3  class="related_post_title">Related Posts</h3><ul class="related_post"><li><a href="http://www.rickyzhu.com/2286_oracle-goldengate-config.html" title="Oracle GoldenGate配置过程">Oracle GoldenGate配置过程</a> (0)</li><li><a href="http://www.rickyzhu.com/2282_goldengate-exception.html" title="GoldenGate常见异常处理">GoldenGate常见异常处理</a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.rickyzhu.com/2299_goldengate-on-rac.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>srvctl起停Oracle实例内幕</title>
		<link>http://www.rickyzhu.com/2292_srvctl-start-db.html?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=srvctl-start-db</link>
		<comments>http://www.rickyzhu.com/2292_srvctl-start-db.html#comments</comments>
		<pubDate>Wed, 30 Nov 2011 12:45:06 +0000</pubDate>
		<dc:creator>ricky.zhu</dc:creator>
				<category><![CDATA[数据库]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[rac]]></category>

		<guid isPermaLink="false">http://www.rickyzhu.com/?p=2292</guid>
		<description><![CDATA[早上跟小荷 @oracleblog 探讨说利用srvctl 和sqlplus启动Oracle实例上有什么不同，大概的工作过程是怎样的。 并且他在Solaris上遇到了一个因为project设置问题导致srvctl启动失败的bug，详细过程可以参考这个帖子。 今天就简单介绍下在Oracle 11gR2中利用srvctl启动和停止Oracle instance的过程以及对应的日志查看方法。 简单来说，过程就是：srvctl->srvm (UIserver)->CRSD PE(proxy engine)->CRSD AGFW(agent framework)->agent->GIMH 1）环境是11.2.0.3，Linux64bit，两个节点的RAC $ ./crsctl query crs activeversion Oracle Clusterware active version on the cluster is [11.2.0.3.0] [Wed Nov 30 09:11:43][crsusr@node05:/scratch/u01/11203/grid/bin] $ 2）首先检查下，当前的数据库状态和资源状态 $ date; ./srvctl status database &#8230;<p class="read-more"><a href="http://www.rickyzhu.com/2292_srvctl-start-db.html">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>早上跟小荷 @oracleblog 探讨说利用srvctl 和sqlplus启动Oracle实例上有什么不同，大概的工作过程是怎样的。 并且他在Solaris上遇到了一个因为project设置问题导致srvctl启动失败的bug，详细过程可以<a href="http://www.oracleblog.org/working-case/srvctl-can-not-start-node-but-sqlplus-can/">参考这个帖子</a>。</p>
<p>今天就简单介绍下在Oracle 11gR2中利用srvctl启动和停止Oracle instance的过程以及对应的日志查看方法。</p>
<p>简单来说，过程就是：srvctl->srvm (UIserver)->CRSD PE(proxy engine)->CRSD AGFW(agent framework)->agent->GIMH</p>
<p>1）环境是11.2.0.3，Linux64bit，两个节点的RAC</p>
<pre class="brush: bash; gutter: true; first-line: 1; highlight: []; html-script: false">

$ ./crsctl query crs activeversion
Oracle Clusterware active version on the cluster is [11.2.0.3.0]
[Wed Nov 30 09:11:43][crsusr@node05:/scratch/u01/11203/grid/bin]
$
</pre>
<p>2）首先检查下，当前的数据库状态和资源状态</p>
<pre class="brush: bash; gutter: true; first-line: 1; highlight: []; html-script: false">

$ date; ./srvctl status database -d mynewracdb
Wednesday, November 30, 2011  9:07:47 AM UTC
Instance mynewrac1 is running on node node05
Instance mynewrac2 is running on node node06
[Wed Nov 30 09:07:50][crsusr@node05:/scratch/u01/11203/grid/bin]

$ ./crsctl stat res -t

...

ora.mynewracdb.db
      1        ONLINE  ONLINE       node05                 Open
      2        ONLINE  ONLINE       node06                 Open
ora.oc4j
      1        ONLINE  ONLINE       node05
ora.scan1.vip
      1        ONLINE  ONLINE       node06
ora.scan2.vip
      1        ONLINE  ONLINE       node05
ora.scan3.vip
      1        ONLINE  ONLINE       node05

...
</pre>
<p>3）停止数据库在节点1上的实例，查看crsd日志和agent日志</p>
<pre class="brush: bash; gutter: true; first-line: 1; highlight: []; html-script: false">

$ date; ./srvctl stop instance -d mynewracdb -i mynewrac1
Wednesday, November 30, 2011  9:08:59 AM UTC
[Wed Nov 30 09:09:21][crsusr@node05:/scratch/u01/11203/grid/bin]
$ ./crsctl stat res -t
--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.DB_DG.dg
               ONLINE  ONLINE       node05
               ONLINE  ONLINE       node06
ora.LISTENER.lsnr
               ONLINE  ONLINE       node05
               ONLINE  ONLINE       node06
ora.OCR_VD.dg
               ONLINE  ONLINE       node05
               ONLINE  ONLINE       node06
ora.asm
               ONLINE  ONLINE       node05                 Started
               ONLINE  ONLINE       node06                 Started
ora.gsd
               OFFLINE OFFLINE      node05
               OFFLINE OFFLINE      node06
ora.net1.network
               ONLINE  ONLINE       node05
               ONLINE  ONLINE       node06
ora.ons
               ONLINE  ONLINE       node05
               ONLINE  ONLINE       node06
ora.registry.acfs
               ONLINE  ONLINE       node05
               ONLINE  ONLINE       node06
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       node06
ora.LISTENER_SCAN2.lsnr
      1        ONLINE  ONLINE       node05
ora.LISTENER_SCAN3.lsnr
      1        ONLINE  ONLINE       node05
ora.cvu
      1        ONLINE  ONLINE       node05
ora.node05.vip
      1        ONLINE  ONLINE       node05
ora.node06.vip
      1        ONLINE  ONLINE       node06
ora.mynewracdb.db
      1        OFFLINE OFFLINE                               Instance Shutdown
      2        ONLINE  ONLINE       node06                 Open
ora.oc4j
      1        ONLINE  ONLINE       node05
ora.scan1.vip
      1        ONLINE  ONLINE       node06
ora.scan2.vip
      1        ONLINE  ONLINE       node05
ora.scan3.vip
      1        ONLINE  ONLINE       node05
[Wed Nov 30 09:09:45][crsusr@node05:/scratch/u01/11203/grid/bin]
$

crsd.log 日志

/scratch/u01/11203/grid/log/node05/crsd

crsd.log

 30559  2011-11-30 09:09:02.508: [UiServer][49] CS(103727c10)set Properties ( crsusr,10330b690)
===>UI server 收到停止的命令，发给Proxy Engine

 30560  2011-11-30 09:09:02.527: [UiServer][48] {1:52451:782} Sending message to PE. ctx= 1047fa450, Client PID: 16523
 30561  2011-11-30 09:09:02.529: [   CRSPE][47] {1:52451:782} Processing PE command id=838. Description: [Stat Resource : 104622f50]
 30562  2011-11-30 09:09:02.532: [   CRSPE][47] {1:52451:782} Expression Filter : ((TYPE == ora.database.type) AND (NAME == ora.mynewracdb.db))
 30563  2011-11-30 09:09:02.557: [UiServer][48] {1:52451:782} Done for ctx=1047fa450
 30564  2011-11-30 09:09:02.678: [UiServer][49] CS(103727c10)set Properties ( crsusr,10384c290)
 30565  2011-11-30 09:09:02.696: [UiServer][48] {1:52451:783} Container [ Name: UI_STOP
 30566          API_HDR_VER:
 30567          TextMessage[2]
 30568          CLIENT:
 30569          TextMessage[]
 30570          CLIENT_NAME:
 30571          TextMessage[/scratch/u01/11203/grid/jdk/jre/bin/sparcv9/java]
 30572          CLIENT_PID:
 30573          TextMessage[16523]
 30574          CLIENT_PRIMARY_GROUP:
 30575          TextMessage[oinstall]
 30576          FILTER:
 30577          TextMessage[(^A(^A(^A(^A(^A(^ANAME^Ast^Aora.mynewracdb.^A)^A&#038;&#038;^A(^ANAME^Aen^A.svc^A)^A)^A&#038;&#038;^A(^ATYPE^A==^Aora.service.type^A)^A)^A&#038;&#038;^A(^A(^ASTATE^A!=^AOFFLINE^A)^A||^A(^ATARGET^A!=^
AOFFLINE^A)^A)^A)^A||^A(^A(^A(^ANAME^A==^Aora.mynewracdb.db^A)^A&#038;&#038;^A(^ATYPE^A==^Aora.database.type^A)^A)^A&#038;&#038;^A(^ASTATE^A!=^AOFFLINE^A)^A)^A)^A&#038;&#038;^A(^ALAST_SERVER^A==^Anode05^A)^A)]
 30578          FILTER_TAG:
 30579          TextMessage[1]
 30580          KEEP_D_TARGETS_TAG:
 30581          TextMessage[1]
 30582          LOCALE:
 30583          TextMessage[AMERICAN_AMERICA.US7ASCII]
 30584          QUEUE_TAG:
 30585          TextMessage[1]
 30586  ]
 30587  2011-11-30 09:09:02.697: [UiServer][48] {1:52451:783} Sending message to PE. ctx= 1047fb9d0, Client PID: 16523
 30588  2011-11-30 09:09:02.698: [   CRSPE][47] {1:52451:783} Cmd : 104622f50 : flags: KEEP_D_TARGETS_TAG | QUEUE_TAG
 30589  2011-11-30 09:09:02.699: [   CRSPE][47] {1:52451:783} Processing PE command id=839. Description: [Stop Resource : 104622f50]
 30590  2011-11-30 09:09:02.703: [   CRSPE][47] {1:52451:783} Expression Filter : ((((((NAME st ora.mynewracdb.) AND (NAME en .svc)) AND (TYPE == ora.service.type)) AND ((STATE != OFFLINE) OR (TARG
ET != OFFLINE))) OR (((NAME == ora.mynewracdb.db) AND (TYPE == ora.database.type)) AND (STATE != OFFLINE))) AND (LAST_SERVER == node05))
 30591  2011-11-30 09:09:02.713: [   CRSPE][47] {1:52451:783} Expression Filter : ((((((NAME st ora.mynewracdb.) AND (NAME en .svc)) AND (TYPE == ora.service.type)) AND ((STATE != OFFLINE) OR (TARG
ET != OFFLINE))) OR (((NAME == ora.mynewracdb.db) AND (TYPE == ora.database.type)) AND (STATE != OFFLINE))) AND (LAST_SERVER == node05))
 30592  2011-11-30 09:09:02.737: [   CRSPE][47] {1:52451:783} RI [ora.mynewracdb.db 1 1] new target state: [OFFLINE] old value: [ONLINE]
 30593  2011-11-30 09:09:02.740: [  CRSOCR][45] {1:52451:783} Multi Write Batch processing...
 30594  2011-11-30 09:09:02.742: [   CRSPE][47] {1:52451:783} RI [ora.mynewracdb.db 1 1] new internal state: [STOPPING] old value: [STABLE]

===> PE发送诶agent framework

 30595  2011-11-30 09:09:02.744: [   CRSPE][47] {1:52451:783} Sending message to agfw: id = 22058
 30596  2011-11-30 09:09:02.744: [    AGFW][42] {1:52451:783} Agfw Proxy Server received the message: RESOURCE_STOP[ora.mynewracdb.db 1 1] ID 4099:22058
 30597  2011-11-30 09:09:02.744: [   CRSPE][47] {1:52451:783} CRS-2673: Attempting to stop 'ora.mynewracdb.db' on 'node05'
 30598
 30599  2011-11-30 09:09:02.745: [    AGFW][42] {1:52451:783} Agfw Proxy Server forwarding the message: RESOURCE_STOP[ora.mynewracdb.db 1 1] ID 4099:22058 to the agent /scratch/u01/11203/grid/bin/o
raagent_crsusr
 30600  2011-11-30 09:09:02.749: [UiServer][48] {1:52451:783} Container [ Name: ORDER
 30601          MESSAGE:
 30602          TextMessage[CRS-2673: Attempting to stop 'ora.mynewracdb.db' on 'node05']

 30603          MSGTYPE:
 30604          TextMessage[3]
 30605          OBJID:
 30606          TextMessage[ora.mynewracdb.db 1 1]
 30607          WAIT:
 30608          TextMessage[0]
 30609  ]
 30610  2011-11-30 09:09:02.809: [  CRSOCR][45] {1:52451:783} Multi Write Batch done.
 30611  2011-11-30 09:09:13.319: [UiServer][49] CS(10333fad0)set Properties ( crsusr,1043d8e50)
 30612  2011-11-30 09:09:13.336: [UiServer][48] {1:52451:784} Container [ Name: UI_STOP
 30613          API_HDR_VER:
 30614          TextMessage[2]
 30615          CLIENT:
 30616          TextMessage[]
 30617          CLIENT_NAME:
 30618          TextMessage[Unknown process]
 30619          CLIENT_PID:
 30620          TextMessage[9788]
 30621          CLIENT_PRIMARY_GROUP:
 30622          TextMessage[oinstall]
 30623          EVENT_TAG:
 30624          TextMessage[1]
 30625          FILTER:
 30626          TextMessage[(^A(^A(^ANAME^A==^Aora.mynewracdb.db^A)^A&#038;&#038;^A(^ALAST_SERVER^A==^Anode05^A)^A)^A&#038;&#038;^A(^ASTATE^A!=^AOFFLINE^A)^A)^AUSR_ORA_OPI=true^AUSR_ORA_INST_NAME=mynewrac1]
 30627          FILTER_TAG:
 30628          TextMessage[1]
 30629          FORCE_TAG:
 30630          TextMessage[1]
 30631          LOCALE:
 30632          TextMessage[AMERICAN_AMERICA.WE8ISO8859P1]
 30633          NO_WAIT_TAG:
 30634          TextMessage[1]
 30635  ]
 30636  2011-11-30 09:09:13.337: [UiServer][48] {1:52451:784} Sending message to PE. ctx= 1047fa890, Client PID: 9788
 30637  2011-11-30 09:09:13.339: [   CRSPE][47] {1:52451:784} Cmd : 104622950 : flags: EVENT_TAG | FORCE_TAG
 30638  2011-11-30 09:09:13.339: [   CRSPE][47] {1:52451:784} Processing PE command id=840. Description: [Stop Resource : 104622950]
 30639  2011-11-30 09:09:13.341: [   CRSPE][47] {1:52451:784} Expression Filter : (((NAME == ora.mynewracdb.db) AND (LAST_SERVER == node05)) AND (STATE != OFFLINE))
 30640  2011-11-30 09:09:13.345: [   CRSPE][47] {1:52451:784} Expression Filter : (((NAME == ora.mynewracdb.db) AND (LAST_SERVER == node05)) AND (STATE != OFFLINE))
 30641  2011-11-30 09:09:13.354: [   CRSPE][47] {1:52451:784} Attribute overrides for the command: USR_ORA_INST_NAME = mynewrac1;USR_ORA_OPI = true;

====》 PE处理完毕，发给我UIserver，并由UIserver返回给sender，也就是最终的用户UI，在这里是svrctl

 30642  2011-11-30 09:09:13.367: [   CRSPE][47] {1:52451:784} PE Command [ Stop Resource : 104622950 ] has completed
 30643  2011-11-30 09:09:13.368: [   CRSPE][47] {1:52451:784} UI Command [Stop Resource : 104622950] is replying to sender.

agent 日志

/scratch/u01/11203/grid/log/node05/agent/crsd/oraagent_crsusr

oraagent_crsusr.log

====> agent 收到PE 发来的命令，开始准备停止的命令

2011-11-30 09:09:02.759: [    AGFW][10] {1:52451:783} Agent received the message: RESOURCE_STOP[ora.mynewracdb.db 1 1] ID 4099:22059
2011-11-30 09:09:02.759: [    AGFW][10] {1:52451:783} Preparing STOP command for: ora.mynewracdb.db 1 1
2011-11-30 09:09:02.759: [    AGFW][10] {1:52451:783} ora.mynewracdb.db 1 1 state changed from: ONLINE to: STOPPING
2011-11-30 09:09:02.767: [ora.mynewracdb.db][18] {1:52451:783} [stop] (:CLSN00108:) clsn_agent::stop {
2011-11-30 09:09:02.768: [ora.mynewracdb.db][18] {1:52451:783} [stop] InstAgent::stop_option stop mode immediate option 1
2011-11-30 09:09:02.768: [ora.mynewracdb.db][18] {1:52451:783} [stop] InstAgent::stop {
2011-11-30 09:09:02.771: [ora.mynewracdb.db][18] {1:52451:783} [stop] InstAgent::stop  shutdown mode: 3
2011-11-30 09:09:02.772: [ora.mynewracdb.db][18] {1:52451:783} [stop] DbAgent::preStopCbk {
2011-11-30 09:09:02.772: [ora.mynewracdb.db][18] {1:52451:783} [stop] DbAgentEventModule::stop stopping event bridge
2011-11-30 09:09:02.805: [ USRTHRD][18] {1:52451:783} CssSemaphore::release, released semaphore CLSN.AQPROC.mynewracdb.MASTER
2011-11-30 09:09:02.805: [ USRTHRD][18] {1:52451:783} AQPROC.mynewracdb CssSemMM::relinquishMastership I am no longer the master
2011-11-30 09:09:02.810: [ USRTHRD][18] {1:52451:783} WorkerThread::removeWorker total workers: 3
2011-11-30 09:09:02.819: [ USRTHRD][18] {1:52451:783} InstConnection:~InstConnection: this 014e6fd0
2011-11-30 09:09:02.820: [ora.mynewracdb.db][18] {1:52451:783} [stop] DbAgentEventModule::stop stopping rlb event bridge
2011-11-30 09:09:02.855: [ USRTHRD][18] {1:52451:783} CssSemaphore::release, released semaphore CLSN.RLB.mynewracdb.MASTER
2011-11-30 09:09:02.855: [ USRTHRD][18] {1:52451:783} RLB.mynewracdb CssSemMM::relinquishMastership I am no longer the master
2011-11-30 09:09:02.860: [ USRTHRD][18] {1:52451:783} WorkerThread::removeWorker total workers: 2
2011-11-30 09:09:02.863: [ USRTHRD][18] {1:52451:783} InstConnection:~InstConnection: this 014e6f70
2011-11-30 09:09:02.866: [ CRSCEVT][18] {1:52451:783} ClusterPublisher::disconnect Disconnected
2011-11-30 09:09:02.867: [ USRTHRD][18] {1:52451:783} Thread:DedicatedThreadstop {
2011-11-30 09:09:02.867: [ USRTHRD][18] {1:52451:783} Thread:DedicatedThreadstop }
2011-11-30 09:09:02.867: [ora.mynewracdb.db][18] {1:52451:783} [stop] DbAgent::preStopCbk }
2011-11-30 09:09:02.869: [ora.mynewracdb.db][18] {1:52451:783} [stop] ConnectionPool::getConnection 260 pConnxn 014e76f0
2011-11-30 09:09:02.869: [ora.mynewracdb.db][18] {1:52451:783} [stop] InstAgent::stop pool pConnxn 014e76f0
2011-11-30 09:09:02.870: [ora.mynewracdb.db][18] {1:52451:783} [stop] InstConnection::shutdown mode 3
2011-11-30 09:09:07.147: [ora.mynewracdb.db][18] {1:52451:783} [stop] DbAgent::stopCbk: {
2011-11-30 09:09:07.147: [ora.mynewracdb.db][18] {1:52451:783} [stop] DbAgent::stopCbk {
2011-11-30 09:09:07.148: [ora.mynewracdb.db][18] {1:52451:783} [stop] DbAgent::stopCbk close - ALTER DATABASE CLOSE NORMAL /* db agent *//* {1:52451:783} */
2011-11-30 09:09:13.156: [ora.mynewracdb.db][18] {1:52451:783} [stop] DbAgent::stopCbk dismount - ALTER DATABASE DISMOUNT /* db agent *//* {1:52451:783} */
2011-11-30 09:09:13.266: [ USRTHRD][18] {1:52451:783} Thread:DedicatedThreadstop {
2011-11-30 09:09:13.266: [ USRTHRD][18] {1:52451:783} Thread:DedicatedThreadstop }
2011-11-30 09:09:13.266: [ora.mynewracdb.db][18] {1:52451:783} [stop] DbAgent::stopCbk }
2011-11-30 09:09:13.266: [ora.mynewracdb.db][18] {1:52451:783} [stop] InstConnection::shutdown mode 5
2011-11-30 09:09:18.103: [ora.asm][13] {1:52451:2} [check] CrsCmd::ClscrsCmdData::stat entity 1 statflag 1 useFilter 0
2011-11-30 09:09:18.186: [ora.asm][13] {1:52451:2} [check] AsmProxyAgent::check clsagfw_res_status 0
2011-11-30 09:09:21.785: [ora.mynewracdb.db][18] {1:52451:783} [stop] ConnectionPool::releaseConnection InstConnection 014e76f0
2011-11-30 09:09:21.786: [ora.mynewracdb.db][18] {1:52451:783} [stop] ConnectionPool::stopConnection
2011-11-30 09:09:21.786: [ora.mynewracdb.db][18] {1:52451:783} [stop] ConnectionPool::removeConnection connection count 1
2011-11-30 09:09:21.786: [ora.mynewracdb.db][18] {1:52451:783} [stop] ConnectionPool::removeConnection sid  mynewrac1, InstConnection 014e76f0
2011-11-30 09:09:21.787: [ USRTHRD][18] {1:52451:783} InstConnection::breakCall pConnxn:014e76f0  DetachLock:00ac96f8 m_pSvcH:01e150b0
2011-11-30 09:09:21.787: [ USRTHRD][18] {1:52451:783} InstConnection:~InstConnection: this 014e76f0
2011-11-30 09:09:21.789: [ora.mynewracdb.db][18] {1:52451:783} [stop] ConnectionPool::removeConnection delete InstConnection 014e76f0
2011-11-30 09:09:21.789: [ora.mynewracdb.db][18] {1:52451:783} [stop] ConnectionPool::removeConnection freed 1

2011-11-30 09:09:21.789: [ora.mynewracdb.db][18] {1:52451:783} [stop] ConnectionPool::stopConnection sid mynewrac1 status  1
2011-11-30 09:09:21.790: [ora.mynewracdb.db][18] {1:52451:783} [stop] InstAgent::stop db/asm
2011-11-30 09:09:21.790: [ora.mynewracdb.db][18] {1:52451:783} [stop] ConnectionPool::stopConnection
2011-11-30 09:09:21.790: [ora.mynewracdb.db][18] {1:52451:783} [stop] ConnectionPool::removeConnection connection count 0
2011-11-30 09:09:21.791: [ora.mynewracdb.db][18] {1:52451:783} [stop] ConnectionPool::removeConnection freed 0
2011-11-30 09:09:21.791: [ora.mynewracdb.db][18] {1:52451:783} [stop] ConnectionPool::stopConnection sid mynewrac1 status  1
2011-11-30 09:09:21.791: [ora.mynewracdb.db][18] {1:52451:783} [stop] InstAgent::stop: }
2011-11-30 09:09:21.792: [ora.mynewracdb.db][18] {1:52451:783} [stop] (:CLSN00108:) clsn_agent::stop }
2011-11-30 09:09:21.792: [    AGFW][18] {1:52451:783} Command: stop for resource: ora.mynewracdb.db 1 1 completed with status: SUCCESS
2011-11-30 09:09:21.795: [    AGFW][10] {1:52451:783} Agent sending reply for: RESOURCE_STOP[ora.mynewracdb.db 1 1] ID 4099:22059
2011-11-30 09:09:21.797: [ora.mynewracdb.db][9] {1:52451:783} [check] ConnectionPool::resetConnection  s_statusOfConnectionMap 00ab1f68
2011-11-30 09:09:21.797: [ora.mynewracdb.db][9] {1:52451:783} [check] ConnectionPool::resetConnection sid mynewrac1 status  2
2011-11-30 09:09:21.798: [ora.mynewracdb.db][9] {1:52451:783} [check] Gimh::check condition changes to (GIMH_NEXT_NUM) 1 exists

====》注意这里的GIMH，这是instance提供的一个接口，可以直接访问到实例，这里的agent就是通过这个接口判断instance是否healthy的，决定database资源是否online或者offline等状态。

2011-11-30 09:09:21.798: [ora.mynewracdb.db][9] {1:52451:783} [check] clsnDbAgent:checkCbk clsagfw_res_status 22
2011-11-30 09:09:21.798: [ USRTHRD][9] {1:52451:783} Thread:DedicatedThreadstop {
2011-11-30 09:09:21.798: [ USRTHRD][9] {1:52451:783} Thread:DedicatedThreadstop }
2011-11-30 09:09:21.799: [ USRTHRD][9] {1:52451:783} Gimh::destructor gimh_dest_query_ctx rc=0
2011-11-30 09:09:21.800: [ USRTHRD][9] {1:52451:783} Gimh::destructor gimh_dest_inst_ctx rc=0
2011-11-30 09:09:21.800: [ora.mynewracdb.db][9] {1:52451:783} [check] ConnectionPool::stopConnection
2011-11-30 09:09:21.800: [ora.mynewracdb.db][9] {1:52451:783} [check] ConnectionPool::removeConnection connection count 0
2011-11-30 09:09:21.801: [ora.mynewracdb.db][9] {1:52451:783} [check] ConnectionPool::removeConnection freed 0
2011-11-30 09:09:21.801: [ora.mynewracdb.db][9] {1:52451:783} [check] ConnectionPool::stopConnection sid mynewrac1 status  1
2011-11-30 09:09:21.801: [ora.mynewracdb.db][9] {1:52451:783} [check] InstAgent::check checkCounter 34 prev clsagfw_res_status 2 current clsagfw_res_status 2
2011-11-30 09:09:21.803: [    AGFW][10] {1:52451:783} ora.mynewracdb.db 1 1 state changed from: STOPPING to: PLANNED_OFFLINE
2011-11-30 09:09:21.803: [    AGFW][10] {1:52451:783} ora.mynewracdb.db 1 1 state details has changed from: Open to: Instance Shutdown
2011-11-30 09:09:21.804: [    AGFW][10] {1:52451:783} Agent sending last reply for: RESOURCE_STOP[ora.mynewracdb.db 1 1] ID 4099:22059
2011-11-30 09:09:21.829: [ USRTHRD][23] ClusterSubscriber::SubscriberWorker::InternalClusterSubscriber::handleEventCBexecuting for reason 1
</pre>
<p>4）启动实例，并再次验证crsd日志和agnet日志</p>
<pre class="brush: bash; gutter: true; first-line: 1; highlight: []; html-script: false">

$ date; ./srvctl start instance -d mynewracdb -i mynewrac1
Wednesday, November 30, 2011  9:10:48 AM UTC
[Wed Nov 30 09:11:25][crsusr@node05:/scratch/u01/11203/grid/bin]
$

crsd 日志类似，不再贴出来，下面看看crsd agent日志：

 41386  2011-11-30 09:10:33.788: [    AGFW][10] {1:52451:2} Agent received the message: AGENT_HB[Engine] ID 12293:22088
 41387  2011-11-30 09:10:50.810: [    AGFW][10] {1:52451:809} Agent received the message: RESOURCE_START[ora.mynewracdb.db 1 1] ID 4098:22138
 41388  2011-11-30 09:10:50.810: [    AGFW][10] {1:52451:809} Preparing START command for: ora.mynewracdb.db 1 1
 41389  2011-11-30 09:10:50.810: [    AGFW][10] {1:52451:809} ora.mynewracdb.db 1 1 state changed from: PLANNED_OFFLINE to: STARTING
 41390  2011-11-30 09:10:50.818: [ora.mynewracdb.db][13] {1:52451:809} [start] (:CLSN00107:) clsn_agent::start {
 41391  2011-11-30 09:10:50.819: [ora.mynewracdb.db][13] {1:52451:809} [start] InstAgent::start {
 41392  2011-11-30 09:10:50.819: [ora.mynewracdb.db][13] {1:52451:809} [start] ConnectionPool::stopConnection
 41393  2011-11-30 09:10:50.820: [ora.mynewracdb.db][13] {1:52451:809} [start] ConnectionPool::removeConnection connection count 0
 41394  2011-11-30 09:10:50.820: [ora.mynewracdb.db][13] {1:52451:809} [start] ConnectionPool::removeConnection freed 0
 41395  2011-11-30 09:10:50.820: [ora.mynewracdb.db][13] {1:52451:809} [start] ConnectionPool::stopConnection sid mynewrac1 status  1
 41396  2011-11-30 09:10:50.820: [ USRTHRD][13] {1:52451:809} ConnectionPool::~ConnectionPool m_oracleHome:/scratch/u02/product/dbhome_1, m_oracleSid:mynewrac1, m_usrOraEnv:
 41397  2011-11-30 09:10:50.821: [ USRTHRD][13] {1:52451:809} Thread:DedicatedThreadstop {
 41398  2011-11-30 09:10:50.821: [ USRTHRD][13] {1:52451:809} Thread:DedicatedThreadstop }
 41399  2011-11-30 09:10:50.822: [ora.mynewracdb.db][13] {1:52451:809} [start] DbAgent:getOracleSid 13 oracle_sid = mynewrac1
 41400  2011-11-30 09:10:50.822: [ora.mynewracdb.db][13] {1:52451:809} [start] DbAgent:getOracleSid  oracle_sid = mynewrac1
 41401  2011-11-30 09:10:50.823: [ora.mynewracdb.db][13] {1:52451:809} [start] getOracleHomeAttrib: oracle_home = /scratch/u02/product/dbhome_1
 41402  2011-11-30 09:10:50.823: [ora.mynewracdb.db][13] {1:52451:809} [start] ConnectionPool::ConnectionPool 2 m_oracleHome:/scratch/u02/product/dbhome_1, m_oracleSid:mynewrac1, m_usrOraEnv:
 41403  2011-11-30 09:10:50.824: [ora.mynewracdb.db][13] {1:52451:809} [start] DbAgent::setOracleSidAttrib updating GEN_USR_ORA_INST_NAME@SERVERNAME(node05) to mynewrac1
 41404  2011-11-30 09:10:50.824: [ora.mynewracdb.db][13] {1:52451:809} [start] clsnUtils::setResAttrib nonPerX current value GEN_USR_ORA_INST_NAME value mynewrac1
 41405  2011-11-30 09:10:50.826: [ora.mynewracdb.db][13] {1:52451:809} [start] CrsCmd::ClscrsCmdData::stat entity 1 statflag 32 useFilter 0
 41406  2011-11-30 09:10:50.899: [ora.mynewracdb.db][13] {1:52451:809} [start] setResAttrib: attr GEN_USR_ORA_INST_NAME@SERVERNAME(node05) clsagfw attribVal mynewrac1 clscrs tmpAttrValue mynewrac
1
 41407  2011-11-30 09:10:50.899: [ora.mynewracdb.db][13] {1:52451:809} [start] setResAttrib clsagfw_modify_attribute attr GEN_USR_ORA_INST_NAME@SERVERNAME(node05) value mynewrac1 retCode 0
 41408  2011-11-30 09:10:50.900: [ora.mynewracdb.db][13] {1:52451:809} [start] sModifyConfig for mynewracdb
 41409  2011-11-30 09:10:50.900: [ora.mynewracdb.db][13] {1:52451:809} [start] getOracleHomeAttrib: oracle_home = /scratch/u02/product/dbhome_1
 41410  2011-11-30 09:10:50.901: [ora.mynewracdb.db][13] {1:52451:809} [start] Utils::getCrsHome crsHome /scratch/u01/11203/grid
 41411  2011-11-30 09:10:50.919: [ora.mynewracdb.db][13] {1:52451:809} [start] sclsnInstAgent::sUpdateOratab oratab is /var/opt/oracle/oratab
 41412  2011-11-30 09:10:50.921: [ora.mynewracdb.db][13] {1:52451:809} [start] sclsnInstAgent::sUpdateOratab CssLock
 41413  2011-11-30 09:10:50.938: [ora.mynewracdb.db][13] {1:52451:809} [start] ConfigFile::getValue name mynewracdb value
 41414  2011-11-30 09:10:50.962: [ora.mynewracdb.db][13] {1:52451:809} [start] ConfigFile::updateInPlace file /var/opt/oracle/oratab is updated
 41415  2011-11-30 09:10:50.962: [ora.mynewracdb.db][13] {1:52451:809} [start] sclsnInstAgent::sUpdateOratab file updated with dbName mynewracdb value /scratch/u02/product/dbhome_1:N
 41416  2011-11-30 09:10:50.962: [ora.mynewracdb.db][13] {1:52451:809} [start] sclsnInstAgent::sUpdateOratab CSS unlock
 41417  2011-11-30 09:10:50.977: [ora.mynewracdb.db][13] {1:52451:809} [start] ConfigFile:update file is /scratch/u02/product/dbhome_1/dbs/initmynewrac1.ora not modified
 41418  2011-11-30 09:10:50.985: [ora.mynewracdb.db][13] {1:52451:809} [start] Utils::getCrsHome crsHome /scratch/u01/11203/grid
 41419  2011-11-30 09:10:50.985: [ora.mynewracdb.db][13] {1:52451:809} [start] crsHome = /scratch/u01/11203/grid
 41420  2011-11-30 09:10:50.985: [ora.mynewracdb.db][13] {1:52451:809} [start] oracleHome = /scratch/u02/product/dbhome_1
 41421  2011-11-30 09:10:50.985: [ora.mynewracdb.db][13] {1:52451:809} [start] command = '/scratch/u01/11203/grid/bin/setasmgidwrap oracle_binary_path=/scratch/u02/product/dbhome_1/bin/oracle'
 41422  2011-11-30 09:10:50.986: [ora.mynewracdb.db][13] {1:52451:809} [start] start dependency = hard(ora.DB_DG.dg) weak(type:ora.listener.type,global:type:ora.scan_listener.type,uniform:ora.ons,g
lobal:ora.gns) pullup(ora.DB_DG.dg)
 41423  2011-11-30 09:10:50.986: [ora.mynewracdb.db][13] {1:52451:809} [start] ASM disk group dependency found
 41424  2011-11-30 09:10:50.986: [ora.mynewracdb.db][13] {1:52451:809} [start] Utils:execCmd action = 1 flags = 6 ohome = /scratch/u01/11203/grid cmdname = setasmgidwrap.

  41425  2011-11-30 09:10:51.245: [ora.mynewracdb.db][13] {1:52451:809} [start] execCmd ret = 0
 41426  2011-11-30 09:10:51.247: [ora.mynewracdb.db][13] {1:52451:809} [start] Utils::getCrsHome crsHome /scratch/u01/11203/grid
 41427  2011-11-30 09:10:51.247: [ora.mynewracdb.db][13] {1:52451:809} [start] clsnInstConnection::makeConnectStr UsrOraEnv  m_oracleHome /scratch/u02/product/dbhome_1 Crshome /scratch/u01/11203/gr
id
 41428  2011-11-30 09:10:51.247: [ora.mynewracdb.db][13] {1:52451:809} [start] Utils::getCrsHome crsHome /scratch/u01/11203/grid
 41429  2011-11-30 09:10:51.247: [ora.mynewracdb.db][13] {1:52451:809} [start] clsnInstConnection::makeConnectStr LIBRARY_PATH1 ,LD_LIBRARY_PATH=
 41430  2011-11-30 09:10:51.248: [ora.mynewracdb.db][13] {1:52451:809} [start] Utils::getCrsHome crsHome /scratch/u01/11203/grid
 41431  2011-11-30 09:10:51.248: [ora.mynewracdb.db][13] {1:52451:809} [start] clsnInstConnection::makeConnectStr LIBRARY_PATH2 ,LD_LIBRARY_PATH=,LD_LIBRARY_PATH_64=
 41432  2011-11-30 09:10:51.248: [ora.mynewracdb.db][13] {1:52451:809} [start] makeConnectStr = (DESCRIPTION=(ADDRESS=(PROTOCOL=beq)(PROGRAM=/scratch/u02/product/dbhome_1/bin/oracle)(ARGV0=oraclemy
newrac1)(ENVS='ORACLE_HOME=/scratch/u02/product/dbhome_1,ORACLE_SID=mynewrac1,LD_LIBRARY_PATH=,LD_LIBRARY_PATH_64=')(ARGS='(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))'))(CONNECT_DATA=(SID=myn
ewrac1)))
 41433  2011-11-30 09:10:51.251: [ora.mynewracdb.db][13] {1:52451:809} [start] Container:start oracle home /scratch/u02/product/dbhome_1
 41434  2011-11-30 09:10:51.251: [ora.mynewracdb.db][13] {1:52451:809} [start] InstConnection::connectInt: server not attached
 41435  2011-11-30 09:10:51.470: [ora.mynewracdb.db][13] {1:52451:809} [start] InstAgent::startup

 ...
  41561  2011-11-30 09:11:25.513: [ USRTHRD][13] {1:52451:809} DbAgentEventModule::notifyDbOpen database is now open
 41562  2011-11-30 09:11:25.513: [ USRTHRD][13] {1:52451:809} DbAgentEventModule::notifyDbOpen starting AQ
 41563  2011-11-30 09:11:25.513: [ USRTHRD][13] {1:52451:809} DbAgentEventModule::notifyDbOpen starting RLB
 41564  2011-11-30 09:11:25.514: [ CRSCEVT][13] {1:52451:809} ClusterPublisher::connect connecting
 41565  2011-11-30 09:11:25.532: [ CRSCEVT][13] {1:52451:809} ClusterPublisher::connect Connected
 41566  2011-11-30 09:11:25.533: [ora.mynewracdb.db][13] {1:52451:809} [start] DbAgent::startCbk: }
 41567  2011-11-30 09:11:25.535: [ora.mynewracdb.db][13] {1:52451:809} [start] InstAgent::start: startConnection pool
 41568  2011-11-30 09:11:25.535: [ora.mynewracdb.db][13] {1:52451:809} [start] ConnectionPool::stopConnection
 41569  2011-11-30 09:11:25.535: [ora.mynewracdb.db][13] {1:52451:809} [start] ConnectionPool::removeConnection connection count 0
 41570  2011-11-30 09:11:25.536: [ora.mynewracdb.db][13] {1:52451:809} [start] ConnectionPool::removeConnection freed 0
 41571  2011-11-30 09:11:25.536: [ora.mynewracdb.db][13] {1:52451:809} [start] ConnectionPool::stopConnection sid mynewrac1 status  1
 41572  2011-11-30 09:11:25.536: [ USRTHRD][13] {1:52451:809} ConnectionPool::~ConnectionPool m_oracleHome:/scratch/u02/product/dbhome_1, m_oracleSid:mynewrac1, m_usrOraEnv:
 41573  2011-11-30 09:11:25.536: [ora.mynewracdb.db][13] {1:52451:809} [start] ConnectionPool::ConnectionPool 2 m_oracleHome:/scratch/u02/product/dbhome_1, m_oracleSid:mynewrac1, m_usrOraEnv:
 41574  2011-11-30 09:11:25.537: [ora.mynewracdb.db][13] {1:52451:809} [start] ConnectionPool::startConnection  s_statusOfConnectionMap 00ab1f68
 41575  2011-11-30 09:11:25.537: [ora.mynewracdb.db][13] {1:52451:809} [start] ConnectionPool::startConnection sid mynewrac1 status  2
 41576  2011-11-30 09:11:25.537: [ora.mynewracdb.db][13] {1:52451:809} [start] InstAgent::start release pConnxn 01b3d528 pConnxn
 41577  2011-11-30 09:11:25.538: [ora.mynewracdb.db][13] {1:52451:809} [start] ConnectionPool::releaseConnection InstConnection 019bf570
 41578  2011-11-30 09:11:25.539: [ora.mynewracdb.db][13] {1:52451:809} [start] InstAgent::start: }
 41579  2011-11-30 09:11:25.539: [ora.mynewracdb.db][13] {1:52451:809} [start] (:CLSN00107:) clsn_agent::start }
 41580  2011-11-30 09:11:25.540: [    AGFW][13] {1:52451:809} Command: start for resource: ora.mynewracdb.db 1 1 completed with status: SUCCESS
 41581  2011-11-30 09:11:25.544: [ora.mynewracdb.db][9] {1:52451:809} [check] Gimh::check OH /scratch/u02/product/dbhome_1 SID mynewrac1
 41582  2011-11-30 09:11:25.544: [    AGFW][10] {1:52451:809} Agent sending reply for: RESOURCE_START[ora.mynewracdb.db 1 1] ID 4098:22138
 41583  2011-11-30 09:11:25.545: [ora.mynewracdb.db][9] {1:52451:809} [check] Gimh::check condition changes to (GIMH_NEXT_NUM) 9 exists
 41584  2011-11-30 09:11:25.546: [ora.mynewracdb.db][9] {1:52451:809} [check] updating GEN_START_OPTIONS from  to open
 41585  2011-11-30 09:11:25.546: [ USRTHRD][9] {1:52451:809} Thread:DedicatedThreadstart {
 41586  2011-11-30 09:11:25.547: [ USRTHRD][9] {1:52451:809} Thread:DedicatedThreadstart }
 41587  2011-11-30 09:11:25.547: [ USRTHRD][2425] {1:52451:809} DbAgent::Dedicated Thread {
 41588  2011-11-30 09:11:25.548: [ USRTHRD][2425] {1:52451:809} CrsCmd::ClscrsCmdData::stat entity 1 statflag 32 useFilter 0
 41589  2011-11-30 09:11:25.549: [    AGFW][10] {1:52451:809} ora.mynewracdb.db 1 1 state changed from: STARTING to: ONLINE
 41590  2011-11-30 09:11:25.550: [    AGFW][10] {1:52451:809} Started implicit monitor for [ora.mynewracdb.db 1 1] interval=1000 delay=1000
 41591  2011-11-30 09:11:25.550: [    AGFW][10] {1:52451:809} ora.mynewracdb.db 1 1 state details has changed from: Instance Shutdown to: Open
 41592  2011-11-30 09:11:25.551: [    AGFW][10] {1:52451:809} Agent sending last reply for: RESOURCE_START[ora.mynewracdb.db 1 1] ID 4098:22138
</pre>
<h3  class="related_post_title">Related Posts</h3><ul class="related_post"><li><a href="http://www.rickyzhu.com/2311_config-ha-goldengate.html" title="如何在11gR2 RAC上配置GoldenGate (下）">如何在11gR2 RAC上配置GoldenGate (下）</a> (0)</li><li><a href="http://www.rickyzhu.com/2119_modify-11gr2-resource-attr.html" title="如何修改Oracle 11gR2中的资源属性">如何修改Oracle 11gR2中的资源属性</a> (0)</li><li><a href="http://www.rickyzhu.com/915_11-2-crs-resource.html" title="Oracle Database 11gR2 Clusterware之资源">Oracle Database 11gR2 Clusterware之资源</a> (0)</li><li><a href="http://www.rickyzhu.com/898_11-2-crsprocesses.html" title="Oracle Database 11gR2 Clusterware之后台进程">Oracle Database 11gR2 Clusterware之后台进程</a> (1)</li><li><a href="http://www.rickyzhu.com/882_troubleshoot-crs-10204-1.html" title="Troubleshoot CRS 10.2.0.4 on EL5 (1)">Troubleshoot CRS 10.2.0.4 on EL5 (1)</a> (1)</li><li><a href="http://www.rickyzhu.com/829_install-10g-rac-on-rhel5.html" title="如何在RHEL5上安装Oracle RAC 10g">如何在RHEL5上安装Oracle RAC 10g</a> (7)</li><li><a href="http://www.rickyzhu.com/755_oracle-utility-deinstall-tool.html" title="Oracle CRS/RAC Utilities-Deinstall tool">Oracle CRS/RAC Utilities-Deinstall tool</a> (1)</li><li><a href="http://www.rickyzhu.com/752_oracle-utility-ostool.html" title="Oracle CRS/RAC Utility-OSTool">Oracle CRS/RAC Utility-OSTool</a> (1)</li><li><a href="http://www.rickyzhu.com/743_oracle-rac-team-hiring-urgent.html" title="Oracle RAC Team Hiring-Urgent">Oracle RAC Team Hiring-Urgent</a> (4)</li><li><a href="http://www.rickyzhu.com/676_oracle-utility-cluvfy.html" title="Oracle Clusterware Utility-Cluvfy">Oracle Clusterware Utility-Cluvfy</a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.rickyzhu.com/2292_srvctl-start-db.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>如何在Windows平台上使用OPatch</title>
		<link>http://www.rickyzhu.com/2288_patch-odi-on-windows.html?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=patch-odi-on-windows</link>
		<comments>http://www.rickyzhu.com/2288_patch-odi-on-windows.html#comments</comments>
		<pubDate>Tue, 29 Nov 2011 12:26:12 +0000</pubDate>
		<dc:creator>ricky.zhu</dc:creator>
				<category><![CDATA[数据库]]></category>
		<category><![CDATA[ODI]]></category>

		<guid isPermaLink="false">http://www.rickyzhu.com/?p=2288</guid>
		<description><![CDATA[之前的工作平台清一色都是在Linux/Unix，自从来了新的部门，因为资源缺乏，只能自给自足，在自己的Windows机器上安装了两个虚拟机（OEL5和Solaris.X64)，另外宿主机的Windows7（64bit）也装了一个11gR2的数据库，工作需要，很多之前没太接触的软件，包括ODI (Oracle Data Integrator)，Oracle Fusion Middleware，Oracle WebLogic Server, Oracle GoldenGate (OGG)等等，该装的也都装上了。 上面是几句题外话了，下面步入正题。 最近因为涉及项目需要，一直在学习和演练ODI，在11.1.0.5.0上遇到了一个bug#12798243，打bug的过程中发现OPatch在Windows平台的使用也没想象的那么复杂，下面简单介绍下过程和使用中的注意事项： 1）首先下载下来最新版本的OPatch，这个在bug#6880880中追踪，只需要下载对应的patch，并解压到ODI_HOME/OPatch下面覆盖即可。 2）下载补丁10288265，这个是打其他ODI的patch之前必须的一个patch，直接解压patch，并运行setup.exe即可 3）下载补丁12798243，这个一个one-off patch，使用刚才步骤1中下载的OPatch进行apply 4）使用之前首先列出来当前ODI的版本和已有的patch 注意：在系统路径中增加OPatch的路径，并且在OPatch/ocm/bin/下面运行生成ocm.rsp文件，这在最新的opatch中是一个必须。 E:\Download\ofm_odi_generic_11.1.1.5.0_disk1_1of1\p12798243_111150_Generic\12798 243\opatch\12798243>opatch lsinventory -oh d:\Oracle\Middleware\Oracle_ODI1 Invoking OPatch 11.1.0.8.5 Oracle 临时补丁程序安装程序版本 11.1.0.8.5 版权所有 (c) 2011, Oracle Corporation。保留所有权利。 Oracle 主目录 : d:\Oracle\Middleware\Oracle_ODI1 主产品清单: &#8230;<p class="read-more"><a href="http://www.rickyzhu.com/2288_patch-odi-on-windows.html">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>之前的工作平台清一色都是在Linux/Unix，自从来了新的部门，因为资源缺乏，只能自给自足，在自己的Windows机器上安装了两个虚拟机（OEL5和Solaris.X64)，另外宿主机的Windows7（64bit）也装了一个11gR2的数据库，工作需要，很多之前没太接触的软件，包括ODI (Oracle Data Integrator)，Oracle Fusion Middleware，Oracle WebLogic Server, Oracle GoldenGate (OGG)等等，该装的也都装上了。</p>
<p>上面是几句题外话了，下面步入正题。</p>
<p>最近因为涉及项目需要，一直在学习和演练ODI，在11.1.0.5.0上遇到了一个bug#12798243，打bug的过程中发现OPatch在Windows平台的使用也没想象的那么复杂，下面简单介绍下过程和使用中的注意事项：</p>
<p>1）首先下载下来最新版本的OPatch，这个在bug#6880880中追踪，只需要下载对应的patch，并解压到ODI_HOME/OPatch下面覆盖即可。<br />
2）下载补丁10288265，这个是打其他ODI的patch之前必须的一个patch，直接解压patch，并运行setup.exe即可</p>
<p>3）下载补丁12798243，这个一个one-off patch，使用刚才步骤1中下载的OPatch进行apply</p>
<p>4）使用之前首先列出来当前ODI的版本和已有的patch</p>
<p>注意：在系统路径中增加OPatch的路径，并且在OPatch/ocm/bin/下面运行生成ocm.rsp文件，这在最新的opatch中是一个必须。</p>
<pre class="brush: bash; gutter: true; first-line: 1; highlight: []; html-script: false">

E:\Download\ofm_odi_generic_11.1.1.5.0_disk1_1of1\p12798243_111150_Generic\12798
243\opatch\12798243>opatch lsinventory -oh d:\Oracle\Middleware\Oracle_ODI1
Invoking OPatch 11.1.0.8.5

Oracle 临时补丁程序安装程序版本 11.1.0.8.5
版权所有 (c) 2011, Oracle Corporation。保留所有权利。

Oracle 主目录       : d:\Oracle\Middleware\Oracle_ODI1
主产品清单: C:\Program Files\Oracle\Inventory
   从           : n/a
OPatch 版本    : 11.1.0.8.5
OUI 版本       : 11.1.0.9.0
OUI 位置      : d:\Oracle\Middleware\Oracle_ODI1\oui
日志文件位置 : d:\Oracle\Middleware\Oracle_ODI1\cfgtoollogs\opatch\opatch2011-11
-29_16-10-08下午.log

Patch history file: d:\Oracle\Middleware\Oracle_ODI1\cfgtoollogs\opatch\opatch_h
istory.txt

OPatch detects the Middleware Home as "D:\Oracle\Middleware"

Lsinventory Output file location : d:\Oracle\Middleware\Oracle_ODI1\cfgtoollogs\
opatch\lsinv\lsinventory2011-11-29_16-10-08下午.txt

--------------------------------------------------------------------------------

已安装的顶级产品 (2):

Oracle Data Integrator 11g                                           11.1.1.5.0
Oracle Data Integrator Patchset                                      11.1.1.5.1
此 Oracle 主目录中已安装 2 个产品。

此 Oracle 主目录中未安装任何临时补丁程序。

--------------------------------------------------------------------------------
</pre>
<p>5）调用OPatch apply 打patch，注意这个版本的OPatch auto暂时并不支持在Windows平台上使用。另外就是ocm.rsp文件可以使用参数 -ocmrf 进行指定（使用我们之前生成的response file文件。</p>
<pre class="brush: bash; gutter: true; first-line: 1; highlight: []; html-script: false">

E:\Download\ofm_odi_generic_11.1.1.5.0_disk1_1of1\p12798243_111150_Generic\12798
243\opatch\12798243>opatch.bat apply -jdk d:\Java\jdk1.6.0_27 -oh d:\Oracle\Midd
leware\Oracle_ODI1 -ocmrf d:\oracle\Middleware\Oracle_ODI1\OPatch\ocm\bin\ocm.rs
p
Invoking OPatch 11.1.0.8.5

Oracle 临时补丁程序安装程序版本 11.1.0.8.5
版权所有 (c) 2011, Oracle Corporation。保留所有权利。

Oracle 主目录       : d:\Oracle\Middleware\Oracle_ODI1
主产品清单: C:\Program Files\Oracle\Inventory
   从           : n/a
OPatch 版本    : 11.1.0.8.5
OUI 版本       : 11.1.0.9.0
OUI 位置      : d:\Oracle\Middleware\Oracle_ODI1\oui
日志文件位置 : d:\Oracle\Middleware\Oracle_ODI1\cfgtoollogs\opatch\opatch2011-11
-29_16-38-20下午.log

Patch history file: d:\Oracle\Middleware\Oracle_ODI1\cfgtoollogs\opatch\opatch_h
istory.txt

OPatch detects the Middleware Home as "D:\Oracle\Middleware"

ApplySession 将临时补丁程序 '12798243' 应用到 OH 'd:\Oracle\Middleware\Oracle_OD
I1'

Running prerequisite checks...

OPatch 从产品清单中检测到非集群 Oracle 主目录, 将仅对本地系统打补丁。

请关闭本地系统上在此 ORACLE_HOME 之外运行的 Oracle 实例。
(Oracle 主目录 = 'd:\Oracle\Middleware\Oracle_ODI1')

本地系统是否已准备打补丁? [y|n]
y
User Responded with: Y
为 Oracle 主目录备份文件和产品清单 (不是用于自动回退)
正在备份受补丁程序 '12798243' 影响的文件以用于还原。此操作将需要一些时间...
正在备份受补丁程序 '12798243' 影响的文件以用于回退。此操作将需要一些时间...

正在为组件 oracle.odi.common, 11.1.1.5.0 打补丁...
将文件复制到 "d:\Oracle\Middleware\Oracle_ODI1\oracledi.common\odi\lib\odi-core.
jar"

正在为组件 oracle.odi.agent, 11.1.1.5.0 打补丁...
将文件复制到 "d:\Oracle\Middleware\Oracle_ODI1\oracledi.sdk\lib\odi-core.jar"

正在为组件 oracle.odi.studio, 11.1.1.5.0 打补丁...
将文件复制到 "d:\Oracle\Middleware\Oracle_ODI1\oracledi\client\jdev\extensions\o
racle.odi.navigator\lib\odi-core.jar"
ApplySession 将临时补丁程序 '12798243' 添加到产品清单

Verifying the update...
Inventory check OK: Patch ID 12798243 is registered in Oracle Home inventory wit
h proper meta-data.
Files check OK: Files from Patch ID 12798243 are present in Oracle Home.

本地系统已打补丁, 可以重新启动。

OPatch succeeded.
</pre>
<p>6）确定补丁打完之后，进行验证</p>
<pre class="brush: bash; gutter: true; first-line: 1; highlight: []; html-script: false">

E:\Download\ofm_odi_generic_11.1.1.5.0_disk1_1of1\p12798243_111150_Generic\12798
243\opatch\12798243>opatch lsinventory -oh d:\Oracle\Middleware\Oracle_ODI1
Invoking OPatch 11.1.0.8.5

Oracle 临时补丁程序安装程序版本 11.1.0.8.5
版权所有 (c) 2011, Oracle Corporation。保留所有权利。

Oracle 主目录       : d:\Oracle\Middleware\Oracle_ODI1
主产品清单: C:\Program Files\Oracle\Inventory
   从           : n/a
OPatch 版本    : 11.1.0.8.5
OUI 版本       : 11.1.0.9.0
OUI 位置      : d:\Oracle\Middleware\Oracle_ODI1\oui
日志文件位置 : d:\Oracle\Middleware\Oracle_ODI1\cfgtoollogs\opatch\opatch2011-11
-29_16-39-40下午.log

Patch history file: d:\Oracle\Middleware\Oracle_ODI1\cfgtoollogs\opatch\opatch_h
istory.txt

OPatch detects the Middleware Home as "D:\Oracle\Middleware"

Lsinventory Output file location : d:\Oracle\Middleware\Oracle_ODI1\cfgtoollogs\
opatch\lsinv\lsinventory2011-11-29_16-39-40下午.txt

--------------------------------------------------------------------------------

已安装的顶级产品 (2):

Oracle Data Integrator 11g                                           11.1.1.5.0
Oracle Data Integrator Patchset                                      11.1.1.5.1
此 Oracle 主目录中已安装 2 个产品。

临时补丁程序 (1) :

Patch  12798243     : applied on Tue Nov 29 16:38:46 CST 2011
Unique Patch ID:  14166630
   Created on 5 Oct 2011, 13:21:47 hrs
   Bugs fixed:
     12798243

--------------------------------------------------------------------------------

OPatch succeeded.

E:\Download\ofm_odi_generic_11.1.1.5.0_disk1_1of1\p12798243_111150_Generic\12798
243\opatch\12798243>
</pre>
<p>至此，在Windows上使用最新版本的OPatch给ODI打补丁完成。</p>
<h3  class="related_post_title">Related Posts</h3><ul class="related_post"><li><a href="http://www.rickyzhu.com/2279_odi-lang-setting.html" title="ODI界面设置">ODI界面设置</a> (1)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.rickyzhu.com/2288_patch-odi-on-windows.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Oracle GoldenGate配置过程</title>
		<link>http://www.rickyzhu.com/2286_oracle-goldengate-config.html?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=oracle-goldengate-config</link>
		<comments>http://www.rickyzhu.com/2286_oracle-goldengate-config.html#comments</comments>
		<pubDate>Fri, 25 Nov 2011 07:38:03 +0000</pubDate>
		<dc:creator>ricky.zhu</dc:creator>
				<category><![CDATA[数据库]]></category>
		<category><![CDATA[GoldenGate]]></category>

		<guid isPermaLink="false">http://www.rickyzhu.com/?p=2286</guid>
		<description><![CDATA[在同一个库的不同schema之间进行GoldenGate的配置，下面是详细的步骤。 1, 解压ogg的zip包，ogg是绿色软件，直接解压即可。 2，建立ogg所需的目录，直接用ggsci，然后命令create subdirs [oracle@localhost base]$ ggsci Oracle GoldenGate Command Interpreter for Oracle Version 11.1.1.1.2 OGGCORE_11.1.1.1.2_PLATFORMS_111004.2100 Linux, x64, 64bit (optimized), Oracle 11g on Oct 4 2011 23:49:46 Copyright (C) 1995, 2011, Oracle and/or its affiliates. All rights reserved. GGSCI &#8230;<p class="read-more"><a href="http://www.rickyzhu.com/2286_oracle-goldengate-config.html">Read more &#187;</a></p>]]></description>
			<content:encoded><![CDATA[<p>在同一个库的不同schema之间进行GoldenGate的配置，下面是详细的步骤。</p>
<p>1, 解压ogg的zip包，ogg是绿色软件，直接解压即可。<br />
2，建立ogg所需的目录，直接用ggsci，然后命令create subdirs</p>
<pre class="brush: shell; gutter: true; first-line: 1; highlight: []; html-script: false">

[oracle@localhost base]$ ggsci

Oracle GoldenGate Command Interpreter for Oracle
Version 11.1.1.1.2 OGGCORE_11.1.1.1.2_PLATFORMS_111004.2100
Linux, x64, 64bit (optimized), Oracle 11g on Oct  4 2011 23:49:46

Copyright (C) 1995, 2011, Oracle and/or its affiliates. All rights reserved.

GGSCI (localhost.localdomain) 1> create subdirs

Creating subdirectories under current directory /u01/app/base

Parameter files                /u01/app/base/dirprm: created
Report files                   /u01/app/base/dirrpt: created
Checkpoint files               /u01/app/base/dirchk: created
Process status files           /u01/app/base/dirpcs: created
SQL script files               /u01/app/base/dirsql: created
Database definitions files     /u01/app/base/dirdef: created
Extract data files             /u01/app/base/dirdat: created
Temporary files                /u01/app/base/dirtmp: created
Veridata files                 /u01/app/base/dirver: created
Veridata Lock files            /u01/app/base/dirver/lock: created
Veridata Out-Of-Sync files     /u01/app/base/dirver/oos: created
Veridata Out-Of-Sync XML files /u01/app/base/dirver/oosxml: created
Veridata Parameter files       /u01/app/base/dirver/params: created
Veridata Report files          /u01/app/base/dirver/report: created
Veridata Status files          /u01/app/base/dirver/status: created
Veridata Trace files           /u01/app/base/dirver/trace: created
Stdout files                   /u01/app/base/dirout: created
</pre>
<p>3，建立所需要的三个用户，ggate用户，源和目标用户jss和jst。</p>
<p>create user ggate identified by ggate;<br />
grant dba to ggate;</p>
<p>create user jss identified by jss;<br />
grant connect, resource to jss;</p>
<p>create user jst identified by jst;<br />
grant connect, resource to jst;</p>
<p>4, 用jss登录，在源上建立一个测试表，并灌入一部分测试数据。</p>
<p>conn jss/jss<br />
create table test as select * from user_objects where 1=2;<br />
insert into test select * from user_objects ;<br />
commit;</p>
<p>至此，所需要的准备工作完成，这里为了简化操作，我们只做最简单的dml的复制操作。</p>
<p>5，登录ggsci，配置manager所需要的端口并启动manager</p>
<pre class="brush: shell; gutter: true; first-line: 1; highlight: []; html-script: false">
GGSCI (localhost.localdomain) 4> edit params mgr

PORT 7809

GGSCI (localhost.localdomain) 5> start mgr
MGR is already running.
</pre>
<p>6，登录ggsci,连接进源数据库，并添加一个源复制队列和目标复制队列</p>
<pre class="brush: shell; gutter: true; first-line: 1; highlight: []; html-script: false">
GGSCI (localhost.localdomain) 6> dblogin userid ggate,password ggate
Successfully logged into database.

GGSCI (localhost.localdomain) 9> add extract ext1 ,tranlog,begin now
EXTRACT added.

GGSCI (localhost.localdomain) 10> add exttrail ./dirdat/lt ,extract ext1
EXTTRAIL added.

GGSCI (localhost.localdomain) 11> edit params ext1

extract ext1
userid ggate@orcldb,password ggate
rmthost 127.0.0.1,mgrport 7809
RMTTASK REPLICAT, GROUP rep1
table jss.*;

GGSCI (localhost.localdomain) 12> add replicat rep1,exttrail ./dirdat/lt,checkpointtable ggate.checkpo
int
REPLICAT added.

GGSCI (localhost.localdomain) 13> edit params rep1

REPLICAT rep1
ASSUMETARGETDEFS
USERID ggate@orcldb,PASSWORD ggate
DISCARDFILE ./dirrpt/rep1_gg2.dsc,PURGE
MAP jss.*, TARGET jst.*;
</pre>
<p>7，启动源和目标队列，并查看</p>
<pre class="brush: shell; gutter: true; first-line: 1; highlight: []; html-script: false">

GGSCI (localhost.localdomain) 30> start ext1

Sending START request to MANAGER ...
EXTRACT EXT1 starting

GGSCI (localhost.localdomain) 31> start rep1

Sending START request to MANAGER ...
REPLICAT REP1 starting
</pre>
<p>8，查看源和目标的复制结果</p>
<pre class="brush: shell; gutter: true; first-line: 1; highlight: []; html-script: false">

GGSCI (localhost.localdomain) 40> view report ext1

2011-11-25 13:16:54  INFO    OGG-01017  Wildcard resolution set to IMMEDIATE because SOURCEISTABLE is
used.

***********************************************************************
                 Oracle GoldenGate Capture for Oracle
     Version 11.1.1.1.2 OGGCORE_11.1.1.1.2_PLATFORMS_111004.2100
   Linux, x64, 64bit (optimized), Oracle 11g on Oct  7 2011 05:37:17

Copyright (C) 1995, 2011, Oracle and/or its affiliates. All rights reserved.

                    Starting at 2011-11-25 13:16:54
***********************************************************************

Operating System Version:
Linux
Version #1 SMP Mon Mar 29 22:10:29 EDT 2010, Release 2.6.18-194.el5
Node: localhost.localdomain
Machine: x86_64
                         soft limit   hard limit
Address Space Size   :    unlimited    unlimited
Heap Size            :    unlimited    unlimited
File Size            :    unlimited    unlimited
CPU Time             :    unlimited    unlimited

Process id: 4765

Description:

***********************************************************************
**            Running with the following parameters                  **
***********************************************************************
extract ext1
userid ggate@orcldb,password *****
rmthost 127.0.0.1,mgrport 7809
RMTTASK REPLICAT, GROUP rep1
table jss.*;
TABLEWildcard  resolved (entry JSS.*):
  table JSS.J1;

Using the following key columns for source table JSS.J1: ID.
TABLEWildcard  resolved (entry JSS.*):
  table JSS.J2;

2011-11-25 13:16:55  WARNING OGG-00869  No unique key is defined for table J2. All viable columns will
 be used to represent the key, but may not guarantee uniqueness.  KEYCOLS may be used to define the ke
y.

Using the following key columns for source table JSS.J2: ID, VL.
TABLEWildcard  resolved (entry JSS.*):
  table JSS.TEST;

2011-11-25 13:16:55  WARNING OGG-00869  No unique key is defined for table TEST. All viable columns wi
ll be used to represent the key, but may not guarantee uniqueness.  KEYCOLS may be used to define the
key.

Using the following key columns for source table JSS.TEST: ID.

CACHEMGR virtual memory values (may have been adjusted)
CACHEBUFFERSIZE:                         64K
CACHESIZE:                                8G
CACHEBUFFERSIZE (soft max):               4M
CACHEPAGEOUTSIZE (normal):                4M
PROCESS VM AVAIL FROM OS (min):          16G
CACHESIZEMAX (strict force to disk):  13.99G

Database Version:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
PL/SQL Release 11.2.0.3.0 - Production
CORE    11.2.0.3.0      Production
TNS for Linux: Version 11.2.0.3.0 - Production
NLSRTL Version 11.2.0.3.0 - Production

Database Language and Character Set:
NLS_LANG environment variable specified has invalid format, default value will be used.
NLS_LANG environment variable not set, using default value AMERICAN_AMERICA.US7ASCII.
NLS_LANGUAGE     = "AMERICAN"
NLS_TERRITORY    = "AMERICA"
NLS_CHARACTERSET = "WE8MSWIN1252"

Warning: your NLS_LANG setting does not match database server language setting.
Please refer to user manual for more information.

Processing table JSS.J1

Processing table JSS.J2

Processing table JSS.TEST

***********************************************************************
*                   ** Run Time Statistics **                         *
***********************************************************************

Report at 2011-11-25 13:17:00 (activity since 2011-11-25 13:16:54)

Output to rep1:

From Table JSS.J1:
       #                   inserts:         4
       #                   updates:         0
       #                   deletes:         0
       #                  discards:         0

REDO Log Statistics
  Bytes parsed                    0
  Bytes output                  316

GGSCI (localhost.localdomain) 41> view report rep1

***********************************************************************
                 Oracle GoldenGate Delivery for Oracle
     Version 11.1.1.1.2 OGGCORE_11.1.1.1.2_PLATFORMS_111004.2100
   Linux, x64, 64bit (optimized), Oracle 11g on Oct  7 2011 05:44:59

Copyright (C) 1995, 2011, Oracle and/or its affiliates. All rights reserved.

                    Starting at 2011-11-25 13:16:55
***********************************************************************

Operating System Version:
Linux
Version #1 SMP Mon Mar 29 22:10:29 EDT 2010, Release 2.6.18-194.el5
Node: localhost.localdomain
Machine: x86_64
                         soft limit   hard limit
Address Space Size   :    unlimited    unlimited
Heap Size            :    unlimited    unlimited
File Size            :    unlimited    unlimited
CPU Time             :    unlimited    unlimited

Process id: 4771

Description:

***********************************************************************
**            Running with the following parameters                  **
***********************************************************************
REPLICAT rep1
ASSUMETARGETDEFS
USERID ggate@orcldb,PASSWORD *****
DISCARDFILE ./dirrpt/rep1_gg2.dsc,PURGE
MAP jss.*, TARGET jst.*;

CACHEMGR virtual memory values (may have been adjusted)
CACHEBUFFERSIZE:                         64K
CACHESIZE:                              512M
CACHEBUFFERSIZE (soft max):               4M
CACHEPAGEOUTSIZE (normal):                4M
PROCESS VM AVAIL FROM OS (min):           1G
CACHESIZEMAX (strict force to disk):    881M

Database Version:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
PL/SQL Release 11.2.0.3.0 - Production
CORE    11.2.0.3.0      Production
TNS for Linux: Version 11.2.0.3.0 - Production
NLSRTL Version 11.2.0.3.0 - Production

Database Language and Character Set:
NLS_LANG environment variable specified has invalid format, default value will be used.
NLS_LANG environment variable not set, using default value AMERICAN_AMERICA.US7ASCII.
NLS_LANGUAGE     = "AMERICAN"
NLS_TERRITORY    = "AMERICA"
NLS_CHARACTERSET = "WE8MSWIN1252"

Warning: your NLS_LANG setting does not match database server language setting.
Please refer to user manual for more information.

***********************************************************************
**                     Run Time Messages                             **
***********************************************************************

Wildcard MAP resolved (entry JSS.*):
  MAP JSS.J1, TARGET jst.J1;
Using following columns in default map by name:
  ID, VL

Using the following key columns for target table JST.J1: ID.

***********************************************************************
*                   ** Run Time Statistics **                         *
***********************************************************************

Report at 2011-11-25 13:17:05 (activity since 2011-11-25 13:17:00)

From Table JSS.J1 to JST.J1:
       #                   inserts:         4
       #                   updates:         0
       #                   deletes:         0
       #                  discards:         0

CACHE OBJECT MANAGER statistics

CACHE MANAGER VM USAGE
vm current     =      0    vm anon queues =      0
vm anon in use =      0    vm file        =      0
vm used max    =      0    ==> CACHE BALANCED

CACHE CONFIGURATION
cache size       = 512M   cache force paging = 881M
buffer min       =  64K   buffer highwater   =   4M
pageout eligible size =   4M

================================================================================
RUNTIME STATS FOR SUPERPOOL

CACHE Transaction Stats
trans active   =      0    max concurrent =      0
non-zero total =      0    trans total    =      0

CACHE File Caching
disk current   =      0    disk total  =      0
disk caching   =      0    file cached =      0
file retrieves =      0

CACHE MANAGEMENT
buffer links  =      0   anon gets   =      0
forced unmaps =      0   cnnbl try   =      0
cached out    =      0   force out   =      0

Allocation Request Distribution
< 128B:       0
 128B:        0         0     | 512B:        0         0
   2K:        0         0     |   8K:        0         0
  32K:        0         0     | 128K:        0         0
 512K:        0         0     |   2M:        0         0
   8M:        0         0     |  32M:        0         0
 128M:        0         0     | 512M:        0         0
   2G:        0         0     |   8G:        0

Cached Transaction Size Distribution
    0:        0
 < 4K:        0
   4K:        0         0     |  16K:        0         0
  64K:        0         0     | 256K:        0         0
   1M:        0         0     |   4M:        0         0
  16M:        0         0     |  64M:        0         0
 256M:        0         0     |   1G:        0         0
   4G:        0         0     |  16G:        0         0
  64G:        0         0     | 256G:        0         0
   1T:        0         0     |   4T:        0         0
  16T:        0         0     |  64T:        0         0
 256T:        0         0     |1024T:        0         0

================================================================================
CUMULATIVE STATS FOR SUPERPOOL

CACHE Transaction Stats
trans active   =      0    max concurrent =      0
non-zero total =      0    trans total    =      0

CACHE File Caching
disk current   =      0    disk total  =      0
disk caching   =      0    file cached =      0
file retrieves =      0

CACHE MANAGEMENT
buffer links  =      0   anon gets   =      0
forced unmaps =      0   cnnbl try   =      0
cached out    =      0   force out   =      0

Allocation Request Distribution
< 128B:       0
 128B:        0         0     | 512B:        0         0
   2K:        0         0     |   8K:        0         0
  32K:        0         0     | 128K:        0         0
 512K:        0         0     |   2M:        0         0
   8M:        0         0     |  32M:        0         0
 128M:        0         0     | 512M:        0         0
   2G:        0         0     |   8G:        0

Cached Transaction Size Distribution
    0:        0
 < 4K:        0
   4K:        0         0     |  16K:        0         0
  64K:        0         0     | 256K:        0         0
   1M:        0         0     |   4M:        0         0
  16M:        0         0     |  64M:        0         0
 256M:        0         0     |   1G:        0         0
   4G:        0         0     |  16G:        0         0
  64G:        0         0     | 256G:        0         0
   1T:        0         0     |   4T:        0         0
  16T:        0         0     |  64T:        0         0
 256T:        0         0     |1024T:        0         0

QUEUE Statistics:
num queues    =     15     default index =      0
cur len       =      0     max len       =      0
q vm current  =      0     vm max        =      0
q hits        =      0     q misses      =      0

queue size  q hits  curlen  maxlen     cannibalized
  0   64K      0       0       0       0
  1  128K      0       0       0       0
  2  256K      0       0       0       0
  3  512K      0       0       0       0
  4    1M      0       0       0       0
  5    2M      0       0       0       0
  6    4M      0       0       0       0
  7    8M      0       0       0       0
  8   16M      0       0       0       0
  9   32M      0       0       0       0
 10   64M      0       0       0       0
 11  128M      0       0       0       0
 12  256M      0       0       0       0
 13  512M      0       0       0       0
 14    1G      0       0       0       0

================================================================================
RUNTIME STATS FOR CACHE POOL #0
POOL INFO   group: rep1  id: p4771_BLOB
trans active  =       0   trans concurrent (max) =     0
trans total   =       0   (0 )
flag          = 0x00000030
last error    = (0=<none>)

Allocation Request Distribution
< 128B:       0
 128B:        0         0     | 512B:        0         0
   2K:        0         0     |   8K:        0         0
  32K:        0         0     | 128K:        0         0
 512K:        0         0     |   2M:        0         0
   8M:        0         0     |  32M:        0         0
 128M:        0         0     | 512M:        0         0
   2G:        0         0     |   8G:        0

================================================================================
CUMULATIVE STATS FOR CACHE POOL #0
POOL INFO   group: rep1  id: p4771_BLOB
trans active  =       0   trans concurrent (max) =     0
trans total   =       0   (0 )
flag          = 0x00000030
last error    = (0=<none>)

Allocation Request Distribution
< 128B:       0
 128B:        0         0     | 512B:        0         0
   2K:        0         0     |   8K:        0         0
  32K:        0         0     | 128K:        0         0
 512K:        0         0     |   2M:        0         0
   8M:        0         0     |  32M:        0         0
 128M:        0         0     | 512M:        0         0
   2G:        0         0     |   8G:        0

QUEUE Statistics:
num queues    =     15     default index =      0
</pre>
</pre>
<h3  class="related_post_title">Related Posts</h3><ul class="related_post"><li><a href="http://www.rickyzhu.com/2299_goldengate-on-rac.html" title="如何在11gR2 RAC上配置GoldenGate (上）">如何在11gR2 RAC上配置GoldenGate (上）</a> (0)</li><li><a href="http://www.rickyzhu.com/2282_goldengate-exception.html" title="GoldenGate常见异常处理">GoldenGate常见异常处理</a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.rickyzhu.com/2286_oracle-goldengate-config.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

