<?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>Oracle Database Administration Blog &#187; DataGuard Administration</title>
	<atom:link href="http://www.bestremotedba.com/topics/database-administration/dataguard-administration/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.bestremotedba.com</link>
	<description>Oracle Database Administration Blog</description>
	<lastBuildDate>Tue, 07 Sep 2010 03:32:53 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>Standby &#8211; Primary and Logical Standby Database version</title>
		<link>http://www.bestremotedba.com/standby-primary-and-logical-standby-database-version/</link>
		<comments>http://www.bestremotedba.com/standby-primary-and-logical-standby-database-version/#comments</comments>
		<pubDate>Mon, 01 Feb 2010 05:53:33 +0000</pubDate>
		<dc:creator>mudhalvan</dc:creator>
				<category><![CDATA[DataGuard Administration]]></category>
		<category><![CDATA[Standby - Primary and Logical Standby Database version]]></category>

		<guid isPermaLink="false">http://www.bestremotedba.com/?p=537</guid>
		<description><![CDATA[Standby - Primary and Logical Standby Database version]]></description>
			<content:encoded><![CDATA[<!-- Advanced AdSense by Jim Gaudet --><!-- google_ad_section_start --><p>When you create a Logical standby it is not required it should be same version of Primary database and OS also can be different. But in general Database version and OS should be same. </p>
<!-- Advanced AdSense by Jim Gaudet --><!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://www.bestremotedba.com/standby-primary-and-logical-standby-database-version/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Standby Database</title>
		<link>http://www.bestremotedba.com/standby-database/</link>
		<comments>http://www.bestremotedba.com/standby-database/#comments</comments>
		<pubDate>Thu, 10 Dec 2009 06:56:20 +0000</pubDate>
		<dc:creator>aarthimudhalvan</dc:creator>
				<category><![CDATA[DataGuard Administration]]></category>
		<category><![CDATA[Database Administration]]></category>
		<category><![CDATA[Standby Database]]></category>

		<guid isPermaLink="false">http://www.bestremotedba.com/?p=433</guid>
		<description><![CDATA[How does it work? In a nutshell redolog data is shipped from the source data to the target database through Oracle Net services. SOURCE log_archive_dest_1=&#8217;localpath/&#8217; INSTANCE NAME:MHGTST TARGET log_archive_dest_1=&#8217;localpath/&#8217; INSTANCE NAME:STDTST Creating a Physical Standby 1. Verify that the database is in force logging mode. SQL>SELECT FORCE_LOGGING FROM v$database; _________ NO 2. If it is [...]]]></description>
			<content:encoded><![CDATA[<!-- Advanced AdSense by Jim Gaudet --><!-- google_ad_section_start --><p>How does it work?<br />
In a nutshell redolog data is shipped from the source data to the target database through Oracle Net services. </p>
<p>SOURCE<br />
log_archive_dest_1=&#8217;localpath/&#8217;<br />
INSTANCE NAME:MHGTST</p>
<p>TARGET<br />
log_archive_dest_1=&#8217;localpath/&#8217;<br />
INSTANCE NAME:STDTST</p>
<p>Creating a Physical Standby<br />
1. Verify that the database is in force logging mode.</p>
<p>SQL>SELECT FORCE_LOGGING FROM v$database;</p>
<p>_________<br />
NO</p>
<p>2. If it is not in force logging mode set the database in force logging mode.</p>
<p>SQL>ALTER DATABASE FORCE_LOGGING;</p>
<p>Also ensure that the database in archivelog mode, no archive log mode no STANDBY <img src='http://www.bestremotedba.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>3. Check whether log_archive_dest_2 is already set.<br />
If it is set then use log_archive_dest_3</p>
<p>SQL> ALTER SYSTEM SET log_archive_dest_3=&#8217;SERVICE=stdtst&#8217;;</p>
<p>System altered.</p>
<p>4. Shutdown the source database </p>
<p>SQL> shutdown immediate;</p>
<p>Database closed.<br />
Database dismounted.<br />
ORACLE instance shut down.</p>
<p>5. cp the datafiles to the new location</p>
<p>  cd /home/oracle/oracle/oradata/mhgtst /home/oracle/oracle/oradata/stdtst<br />
  copy the admin tree ( bdump, cdump, pfile etc. ) to the new location<br />
  cp -rp /home/oracle/oracle/product/10.2.0/db_1/admin/mhgtst \<br />
         /home/oracle/oracle/product/10.2.0/db_1/admin/stdtst</p>
<p>6.<br />
SQL> startup mount;</p>
<p>ORACLE instance started.</p>
<p>7. create the standby control file</p>
<p>SQL> alter database create standby controlfile as &#8216;/tmp/stdtst.ctl&#8217;;</p>
<p>Database altered.</p>
<p>8. open the source db for other users<br />
SQL> alter database open; </p>
<p>Database altered.</p>
<p>9.CREATE the pfile from spfile and make changes so that all references to mhgtst now point to stdtst.<br />
db_unique_name should still be the same in both the databases.</p>
<p>Make the following changes to the init<SID>.ora file of the STANDBY<br />
dataabase:-<br />
*.user_dump_dest=&#8217;/home/oracle/oracle/product/10.2.0/db_1/admin/stdtst/udump&#8217;<br />
*.db_file_name_convert=&#8217;mhgtst&#8217;,'stdtst&#8217;<br />
*.log_file_name_convert=&#8217;mhgtst&#8217;,'stdtst&#8217;;<br />
*.db_name=&#8217;stdtst&#8217;;<br />
*.db_unique_name=stdtst</p>
<p>10. Create password file for the standby database.<br />
 orapwd file=stdtst entries=2 password=oracle </p>
<p>11. Make final changes<br />
  Remove the log_archive_dest_3 from the standby init<SID>.ora file.<br />
  Create the appropriate entires for log_archive_dest_1 and<br />
  log_archive_dest_2</p>
<p>  mkdir -p /home/oracle/oracle/logarch/stdtst/dest_1<br />
  mkdir -p /home/oracle/oracle/logarch/stdtst/dest_2 </p>
<p>12. Mount the database</p>
<p>export ORACLE_SID=stdtst<br />
SQL>startup nomount;</p>
<p>Oracle Instance started</p>
<p>13. Try to mount the database:-<br />
copy the control file from the source database </p>
<p>[oracle@racdb1 stdtst]$ cp /tmp/stdtst.ctl ./control01.ctl<br />
[oracle@racdb1 stdtst]$ cp /tmp/stdtst.ctl ./control02.ctl<br />
[oracle@racdb1 stdtst]$ cp /tmp/stdtst.ctl ./control03.ctl</p>
<p>SQL> alter database mount standby database;</p>
<p>alter database mount standby database<br />
*<br />
ERROR at line 1:<br />
ORA-01103: database name &#8216;MHGTST&#8217; in control file is not &#8216;;&#8217;</p>
<p>In previous versions of oracle database we had to set LOCK_NAME_SPACE parameter, this is a obsolete / deprecated parameter in 10g.</p>
<p>VERY IMPORTANT</p>
<p>Your db_name in the standby instance should be pointing to the source db name.<br />
db_name=mhgtst<br />
This is the source db name.</p>
<p>SQL> alter database mount standby database<br />
  2  /</p>
<p>Database altered.</p>
<p>14. Recover the stand by database<br />
SQL> recover standby database;<br />
ORA-00279: change 1174794 generated at 08/04/2006 08:48:11 needed for thread 1<br />
ORA-00289: suggestion :<br />
/home/oracle/oracle/logarch/stdtst/dest_2/1_8_597228601.dbf<br />
ORA-00280: change 1174794 for thread 1 is in sequence #8</p>
<p>Specify log: {<RET>suggested | filename | AUTO | CANCEL}</p>
<p>If you want the process to do recovery in background issue the command below:- </p>
<p>ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;</p>
<p>15. Validation<br />
Switch the logfile on the source so that the log file is applied to the target database.<br />
mhgtst -> stdtst</p>
<p>The alert<SID>.log should have the following entries in it:-<br />
Media Recovery Log /home/oracle/oracle/logarch/stdtst/dest_1/1_51_597228601.dbf<br />
Media Recovery Log<br />
/home/oracle/oracle/logarch/stdtst/dest_1/1_52_597228601.dbf<br />
Media Recovery Waiting for thread 1 sequence 53 Fri Aug  4 12:33:53 2006<br />
RFS[1]: No standby redo logfiles created<br />
RFS[1]: Archived Log:<br />
&#8216;/home/oracle/oracle/logarch/stdtst/dest_1/1_53_597228601.dbf&#8217;<br />
Fri Aug  4 12:33:58 2006<br />
Media Recovery Log<br />
/home/oracle/oracle/logarch/stdtst/dest_1/1_53_597228601.dbf<br />
Media Recovery Waiting for thread 1 sequence 54 Fri Aug  4 12:34:50 2006<br />
RFS[1]: No standby redo logfiles created<br />
RFS[1]: Archived Log:<br />
&#8216;/home/oracle/oracle/logarch/stdtst/dest_1/1_54_597228601.dbf&#8217;<br />
Fri Aug  4 12:34:53 2006</p>
<p>16. Canceling recover managed database</p>
<p>SQL>ALTER DATABASE STANDBY DATABASE CANCEL;</p>
<p>Database Altered</p>
<p>17.ALTER DATABASE OPEN;</p>
<p>DB is now open for normal operations</p>
<p>18. Use queries till the application is up and running. In the mean time remember<br />
there are a few log switches in the source database.<br />
TARGET<br />
SHUTDOWN IMMEDIATE and put the physical database in recover mode.</p>
<p>STARTUP MOUNT;<br />
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION<br />
/</p>
<p>ERRORS<br />
ORA-01678: parameter log_file_name_convert must be pairs of pattern and replacement strings<br />
There was a semicolon at the end of the log_file_name_convert, remnove that and the<br />
database was able to start in nomount mode.<br />
Please check your setting for log file name convert parameter.</p>
<p>Media Recovery Start<br />
Managed Standby Recovery not using Real Time Apply<br />
ORA-279 signalled during: ALTER DATABASE RECOVER  standby database  &#8230;</p>
<p>SQL> alter database recover managed standby database disconnect from<br />
SQL> session;</p>
<p>ORA-12154: TNS:could not resolve the connect identifier specified<br />
PING[ARC0]: Heartbeat failed to connect to standby &#8216;stdtst&#8217;. Error is 12154.</p>
<p>This error is because we have not yet configured the name stdtst service. </p>
<p>Configure the listener<br />
SID_LIST_LISTENER =<br />
  (SID_LIST =<br />
    (SID_DESC =<br />
      (SID_NAME = PLSExtProc)<br />
      (ORACLE_HOME = /home/oracle/oracle/product/10.2.0/db_1)<br />
      (PROGRAM = extproc)<br />
    )<br />
    (SID_DESC =<br />
      (SID_NAME = mhgtst)<br />
      (ORACLE_HOME = /home/oracle/oracle/product/10.2.0/db_1)<br />
      (PROGRAM = extproc)<br />
    )<br />
    (SID_DESC =<br />
      (SID_NAME = stdtst)<br />
      (ORACLE_HOME = /home/oracle/oracle/product/10.2.0/db_1)<br />
      (PROGRAM = extproc)<br />
    )<br />
  )</p>
<p>Reload the listener<br />
Listening Endpoints Summary&#8230;<br />
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1)))<br />
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))<br />
Services Summary&#8230;<br />
Service &#8220;PLSExtProc&#8221; has 1 instance(s).<br />
  Instance &#8220;PLSExtProc&#8221;, status UNKNOWN, has 1 handler(s) for this service&#8230;<br />
Service &#8220;mhgtst&#8221; has 1 instance(s).<br />
  Instance &#8220;mhgtst&#8221;, status UNKNOWN, has 1 handler(s) for this service&#8230;<br />
Service &#8220;stdtst&#8221; has 1 instance(s).<br />
  Instance &#8220;stdtst&#8221;, status UNKNOWN, has 1 handler(s) for this service&#8230;</p>
<p>Configure tnsnames<br />
STDTST =<br />
  (DESCRIPTION =<br />
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521))<br />
    (CONNECT_DATA =<br />
      (SERVER = DEDICATED)<br />
      (SERVICE_NAME = STDTST)<br />
    )<br />
  )</p>
<p>Verify tnsping<br />
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = STDTST))) OK (20 msec)</p>
<p>Switch the log file and see if it is been sent to the service.</p>
<p>ORA-28547: connection to server failed, probable Oracle Net admin error<br />
PING[ARC0]: Heartbeat failed to connect to standby &#8216;stdtst&#8217;. Error is 28547.</p>
<p>Usually this error means that there is some incompatibility in sqlnet.ora , tnsnames.ora and listener.ora SID_LIST_LISTENER =<br />
  (SID_LIST =<br />
    (SID_DESC =<br />
      (SID_NAME = PLSExtProc)<br />
      (ORACLE_HOME = /home/oracle/oracle/product/10.2.0/db_1)<br />
      (PROGRAM = extproc)<br />
    )<br />
    (SID_DESC =<br />
      (SID_NAME = mhgtst )<br />
      (ORACLE_HOME = /home/oracle/oracle/product/10.2.0/db_1)<br />
    )<br />
    (SID_DESC =<br />
      (SID_NAME = stdtst )<br />
      (ORACLE_HOME = /home/oracle/oracle/product/10.2.0/db_1)<br />
    )<br />
  )</p>
<p>SQL> alter database mount standby database;<br />
alter database mount standby database<br />
*<br />
ERROR at line 1:<br />
ORA-00205: error in identifying control file, check alert log for more info This error is because we didn&#8217;t put the control file from the source whe we issued a standby control file command.</p>
<!-- Advanced AdSense by Jim Gaudet --><!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://www.bestremotedba.com/standby-database/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DataGuard Switch Over</title>
		<link>http://www.bestremotedba.com/dataguard-switch-over/</link>
		<comments>http://www.bestremotedba.com/dataguard-switch-over/#comments</comments>
		<pubDate>Fri, 25 Sep 2009 07:04:51 +0000</pubDate>
		<dc:creator>mudhalvan</dc:creator>
				<category><![CDATA[DataGuard Administration]]></category>
		<category><![CDATA[DataGuard Switch Over]]></category>

		<guid isPermaLink="false">http://www.bestremotedba.com/?p=128</guid>
		<description><![CDATA[DataGuard Switch Over]]></description>
			<content:encoded><![CDATA[<!-- Advanced AdSense by Jim Gaudet --><!-- google_ad_section_start --><p>DataGuard SWITCH OVER<br />
Phase 1 PRIMARY:<br />
1)    SELECT SWITCHOVER_STATUS FROM V$DATABASE;<br />
2)    /**** ALTER SYSTEM SET remote_archive_enable=RECEIVE SCOPE=SPFILE;/<br />
    ALTER DATABASE COMMIT TO SWITCHOVER TO STANDBY WITH SESSION SHUTDOWN;  (If you get SESSIONS_ACTIVE in 1, otherwise not needed)<br />
3)    ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY;<br />
4)    SHUTDOWN IMMEDIATE;<br />
5)    STARTUP NOMOUNT;<br />
6)    ALTER DATABASE MOUNT STANDBY DATABASE;<br />
7)    ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE;</p>
<p>Phase 2 STANDBY:<br />
1)    SELECT SWITCHOVER_STATUS FROM V$DATABASE;<br />
2)    /****ALTER SYSTEM SET remote_archive_enable=SEND SCOPE=SPFILE;/<br />
3)    ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY;<br />
4)    SHUTDOWN IMMEDIATE;<br />
5)    STARTUP;</p>
<!-- Advanced AdSense by Jim Gaudet --><!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://www.bestremotedba.com/dataguard-switch-over/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Switch from Standby to Primary</title>
		<link>http://www.bestremotedba.com/switch-from-standby-to-primary/</link>
		<comments>http://www.bestremotedba.com/switch-from-standby-to-primary/#comments</comments>
		<pubDate>Fri, 25 Sep 2009 07:02:29 +0000</pubDate>
		<dc:creator>mudhalvan</dc:creator>
				<category><![CDATA[DataGuard Administration]]></category>
		<category><![CDATA[Switch from Standby to Primary]]></category>

		<guid isPermaLink="false">http://www.bestremotedba.com/?p=124</guid>
		<description><![CDATA[Switch from Standby to Primary]]></description>
			<content:encoded><![CDATA[<!-- Advanced AdSense by Jim Gaudet --><!-- google_ad_section_start --><p>&#8212; Switch from Standby to Primary 9i &#038; 10g<br />
1. Apply upto the last log</p>
<p>SQL> startup nomount</p>
<p>SQL> alter database mount standby database;</p>
<p>Database altered.</p>
<p>SQL> select PROTECTION_MODE from v$database;</p>
<p>PROTECTION_MODE<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
MAXIMUM PERFORMANCE</p>
<p>SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE FINISH SKIP STANDBY LOGFILE;<br />
	( without stand-by redologs )<br />
    or </p>
<p>SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE FINISH;<br />
	( with stand-by redologs )<br />
Database altered.</p>
<p>SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY;</p>
<p>Database altered.</p>
<p>SQL>  select * from v$instance;<br />
SQL><br />
SQL> shutdown immediate<br />
ORA-01109: database not open<br />
Database dismounted.<br />
ORACLE instance shut down.<br />
SQL> startup<br />
Database mounted.<br />
Database opened.<br />
SQL></p>
<!-- Advanced AdSense by Jim Gaudet --><!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://www.bestremotedba.com/switch-from-standby-to-primary/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Data Guard Operation Modes</title>
		<link>http://www.bestremotedba.com/data-guard-operation-modes/</link>
		<comments>http://www.bestremotedba.com/data-guard-operation-modes/#comments</comments>
		<pubDate>Tue, 15 Sep 2009 08:13:58 +0000</pubDate>
		<dc:creator>aarthimudhalvan</dc:creator>
				<category><![CDATA[DataGuard Administration]]></category>
		<category><![CDATA[Data Guard Operation Modes]]></category>

		<guid isPermaLink="false">http://dbaexpert.wordpress.com/?p=40</guid>
		<description><![CDATA[Data Guard Operation Modes]]></description>
			<content:encoded><![CDATA[<!-- Advanced AdSense by Jim Gaudet --><!-- google_ad_section_start --><p>Maximum Performance<br />
Updates committed to primary and sent to standby without waiting to see if they were applied to standby<br />
Pros: Little or no effect on performance of primary<br />
Cons: Slight chance of lost transactions (on failover)<br />
Maximum Availability<br />
Attempts to apply updates to standby before committed to primary<br />
Lowers protection to Maximum Performance temporarily if updates can&#8217;t be applied to standby<br />
Pros: Primary continues unaffected if connection to standby is lost or the updates are delayed<br />
Cons: Slight performance hit on primary; lost transactions on failover possible only if the standby has been unreachable<br />
Maximum Protection<br />
Assures updates are applied to standby before committed to primary<br />
Pros: No chance of lost transactions<br />
Cons: Primary will freeze if connection to standby is lost or the updates are delayed</p>
<!-- Advanced AdSense by Jim Gaudet --><!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://www.bestremotedba.com/data-guard-operation-modes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
