Data guard config issue
hi all,
am trying to implement dataguard between 2 servers. I have db 10.2.0.1 on both servers
Created primary database emrep
installed software only onto second server
created standby.ctl file and standby pfile
copied dbf files to second sever
configured tnsnames
started 2nd db in mount mode
the issue I have is that from the standby I can issue the following
connect sys/password@primary as sysdba
and I get connection however, when i issue the following
connect sys/password@secondary as sysdba
I get
ERROR:
ORA-01031: insufficient privileges
Warning: You are no longer connected to ORACLE.
I can tnsping from each server to the other one.
Can anyone suggest possible causes and resolutions to the problem
rgds
alan
yes I can. everything appears to work, the
database_role is correct, the database status is
mounted. I just cannot connect sys/password@emrepdg
as sysdba.
it tells me I have insufficient privsinit-param password_file is set? did you set it to exclusive after building the standby?
regards,
-ap
Similar Messages
-
Hi,
We am trying to create a active data guard config on 2 physical machines. We have a standby created and working properly, but getting issue whilesetting up and active data guard configuration.
Added Primary and Standby database on primary server's DGMGRL's configuration. (haven't done anything on standby yet)
DGMGRL> show configuration
Configuration - DGConfig1
Protection Mode: MaxPerformance
Databases:
prod - Primary database
dr - Physical standby database
Error: ORA-16664: unable to receive the result from a database
Fast-Start Failover: DISABLED
Configuration Status:
ERROR
Primary database listener:_
[oracle@prod log]$ cat /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
# listener.ora Network Configuration File: /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = prod.localdomain)(PORT = 1521))
ADR_BASE_LISTENER = /u01/app/oracle
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = prod)
(ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)
(SID_NAME = prod)
(SID_DESC =
(GLOBAL_DBNAME = prod_DGMGRL)
(ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)
(SID_NAME = prod)
Standby database listener:_
[oracle@dr ~]$ cat /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
# listener.ora Network Configuration File: /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
LISTENER =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.162)(PORT = 1521))
ADR_BASE_LISTENER = /u01/app/oracle
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = dr)
(ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)
(SID_NAME = dr)
(SID_DESC =
(GLOBAL_DBNAME = dr_DGMGRL)
(ORACLE_HOME = /u01/app/oracle/product/11.2.0/dbhome_1)
(SID_NAME = dr)
TNS Entry on both:_
[oracle@dr ~]$ cat /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora
# tnsnames.ora Network Configuration File: /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.
PROD =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.161)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = prod)
DR =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.162)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = dr)
Article followed for DG creation : http://www.oracle.com/webfolder/technetwork/tutorials/obe/db/11g/r2/prod/ha/dataguard/dg_broker/dg_broker.htm
Please suggest where is it going wrong??
Regard!Thanks for the reply Anand..
Please find the last few lines of drcprod.log
2012-06-04 15:28:15.733 00001000 943900813 DMON: Entered rfm_get_chief_lock() for MON_VERIFY, reason 0
2012-06-04 15:28:15.734 00001000 943900813 DMON: chief lock convert for client healthcheck
2012-06-04 15:28:15.735 INSV: Received message for inter-instance publication
2012-06-04 15:28:15.735 req ID 1.1.943900813, opcode MON_VERIFY, phase BEGIN, flags 5
2012-06-04 15:28:15.807 INSV: Reply received for message with
2012-06-04 15:28:15.807 req ID 1.1.943900813, opcode MON_VERIFY, phase BEGIN
2012-06-04 15:28:15.810 00000000 943900813 DMON: Entered rfm_release_chief_lock() for MON_VERIFY
2012-06-04 15:30:14.823 00000000 943900816 DMON: MON_PROPERTY operation completed
2012-06-04 15:30:14.825 00000000 943900817 DMON: GET_DRC: success. (len = 226)
2012-06-04 15:30:14.827 00000000 943900817 DMON: GET_DRC operation completed
2012-06-04 15:30:14.846 01000000 943900818 DMON: GET_SITE: success. (len = 316)
2012-06-04 15:30:14.848 01000000 943900818 DMON: GET_SITE operation completed
2012-06-04 15:30:14.855 02000000 943900819 DMON: GET_SITE: success. (len = 306)
2012-06-04 15:30:14.858 02000000 943900819 DMON: GET_SITE operation completed
2012-06-04 15:30:14.861 01000000 943900820 DMON: MON_PROPERTY operation completed
2012-06-04 15:30:14.864 01010001 943900821 DMON: MON_PROPERTY operation completed
2012-06-04 15:30:14.866 01010001 943900822 DMON: MON_PROPERTY operation completed
2012-06-04 15:30:14.868 01010001 943900823 DMON: MON_PROPERTY operation completed
2012-06-04 15:30:14.870 01010001 943900824 DMON: CTL_GET_STATUS operation completed
2012-06-04 15:30:14.871 02000000 943900825 DMON: MON_PROPERTY operation completed
2012-06-04 15:30:14.873 02010001 943900826 DMON: MON_PROPERTY operation completed
2012-06-04 15:30:14.874 02010001 943900827 DMON: MON_PROPERTY operation completed
2012-06-04 15:30:14.876 02010001 943900828 DMON: MON_PROPERTY operation completed
2012-06-04 15:30:14.879 02010001 943900829 DMON: CTL_GET_STATUS forwarded to site dr for processing
2012-06-04 15:30:14.889 02010001 943900829 DMON: CTL_GET_STATUS operation completed
Also now without any change it gives:
DGMGRL> show configuration
Configuration - DGConfig1
Protection Mode: MaxPerformance
Databases:
prod - Primary database
dr - Physical standby database
Warning: ORA-16809: multiple warnings detected for the database
Fast-Start Failover: DISABLED
Configuration Status:
WARNING
Database is 11.2.0.2, please suggest how to proceed??
Regards! -
Data Guard Configuration Issue / ORA-16047
So last night I decided to setup a test Physical Standby database. I had everything working correctly and when I started playing around with the Data Guard Broker I started having some problems. Now I can't get the logs to ship from the primary to the standby.
Version: Primary and Standby
BANNER
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
PL/SQL Release 11.2.0.1.0 - Production
CORE 11.2.0.1.0 Production
TNS for Linux: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production
OS: Primary and Standby
[oracle@dgdb0 trace]$ uname -a
Linux dgdb0.localdomain 2.6.32-100.28.5.el6.x86_64 #1 SMP Wed Feb 2 18:40:23 EST 2011 x86_64 x86_64 x86_64 GNU/LinuxI first noticed a problem with a large gap in sequence numbers.
Standby
SQL> SELECT sequence#, applied from v$archived_log order by sequence#;
SEQUENCE# APPLIED
8 YES
9 YES
10 YES
11 YES
12 YES
13 YES
14 YES
7 rows selected.
Primary
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 37
Next log sequence to archive 39
Current log sequence 39Here is some of the configuration information on the primary:
SQL> show parameter db_name
NAME TYPE VALUE
db_name string dgdb0
SQL> show parameter db_unique_name
NAME TYPE VALUE
db_unique_name string dgdb0
SQL> show parameter log_archive_config
NAME TYPE VALUE
log_archive_config string dg_config=(dgdb0,dgdb1)
SQL> show parameter log_archive_dest_2
NAME TYPE VALUE
log_archive_dest_2 string service=dgdb1 async valid_for=
(online_logfile,primary_role)
db_unique_name=dgdb1Standby parameters
SQL> show parameter db_name
NAME TYPE VALUE
db_name string dgdb0
SQL> show parameter db_unique_name
NAME TYPE VALUE
db_unique_name string dgdb1So I proceeded to run this query:
SQL> SELECT error from v$archive_dest WHERE dest_name='LOG_ARCHIVE_DEST_2';
ERROR
ORA-16047: DGID mismatch between destination setting and target
databaseThe error description is:
Cause: The DB_UNIQUE_NAME specified for the destination does not match the DB_UNIQUE_NAME at the destination.
Action: Make sure the DB_UNIQUE_NAME specified in the LOG_ARCHIVE_DEST_n parameter defined for the destination matches the DB_UNIQUE_NAME parameter defined at the destination.As you can see from above the DB_UNIQUE_NAME in the LOG_ARCHIVE_DEST_2 parameter matches that of the standby database.
Also DG_BROKER_START is set to false on both the primary and standby databases.
Finally, I've removed all the drc* files from the $ORACLE_HOME/dbs directories on both the primary and standby servers to ensure the broker is not configured.
Where did I go wrong? How can I get the standby caught up and working correctly again?
I apologized if I missed anything. I'm relatively new to standby databases.Centinul;
I have noticed a couple things
1. If you are running the query below from the standby you will probably always get the results you posted
SELECT sequence#, applied from v$archived_log order by sequence#;
What I do if run this from the primary and I add the "DEST_ID" column to the query.
2. You might have better luck finding GAPS using these queries:
select max(sequence#) from v$archived_log where applied='YES';
select process,status from v$managed_standby;
SELECT * FROM V$ARCHIVE_GAP;
3. You are mixing SQL results with Data Broker, that can bite you. Not sure where you went wrong but I would create PFILE versions at both ends before trying to Data Broker. The you can review each setting and avoid issues before adding Data Broker. Data Broker will take control and you may even find it adds entries to your parameter file.
The ORA-16047 is probably database parameter related and this should at least help answer the question. For example you might be missing log_archive_config on the Standby or soething. Comparing the two PFILE's should narrow this down
I checked my Data Broker notes but did not find an ORA-16047, I managed ORA-01031, ORA-16675, ORA-12514, and ORA-16608.
For me I decided it was a good idea to run Data Guard without Data Broker at first until I got the feel of it using SQL.
Last of all if you have not already consider buying Larry Carpenter's "Oracle Data Guard 11g Handbook" In my humble opinion its worth every penny and more.
Best Regards
mseberg -
Hi All Gurus,
I'm getting Problem in configuring Oracle Data Guard Broker 10g as follows:
Installed Oracle 10g Cleint on a Different Machine as Primary & Standby.
TNSNAMES.ora Entry is as follows:PRIMARY =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.29.3.135)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = Primary)
PRIMARY_DGMGRL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.29.3.135)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = Primary)
STANDBY =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.29.3.137)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = Standby)
STANDBY_DGMGRL =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 172.29.3.137)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = STANDBY)
Tnsping Utility is Working Well. Now I'm trying to Enable Fast Start Failover using DGMGRL on 3rd Machine, The Configuration of Primary is as follows:DGMGRL> SHOW DATABASE VERBOSE 'PRIMARY';
Database
Name: PRIMARY
Role: PRIMARY
Enabled: YES
Intended State: ONLINE
Instance(s):
primary
Properties:
InitialConnectIdentifier = 'PRIMARY'
LogXptMode = 'SYNC'
Standby Database:
DGMGRL> SHOW DATABASE VERBOSE 'STANDBY';
Database
Name: STANDBY
Role: PHYSICAL STANDBY
Enabled: YES
Intended State: ONLINE
Instance(s):
standby
Properties:
InitialConnectIdentifier = 'STANDBY'
LogXptMode = 'ARCH'
MY Primary Database is Running in Max Performance Mode. and I also tried to change the Standby LogXptMode from ARCH to SYNC, but it is giving me following Error:
DGMGRL> EDIT DATABASE 'STANDBY' SET PROPERTY LOGXPTMODE='SYNC';
Error: ORA-16789: missing standby redo logs
Failed.
Please tell me how can I change LogXptMode from ARCH to SYNC? please help me. Thanks
Regards,
ImranThanks for reply man. I have completed all of the Steps for Observer (Broker) on 3rd Machine. Thanks a lot
These were the Steps after creating Standby Logs:
DGMGRL> EDIT CONFIGURATION SET PROTECTION MODE AS MAXAVAILABILITY;
Operation requires shutdown of instance "primary" on database "PRIMARY"
Shutting down instance "primary"...
Database closed.
Database dismounted.
ORACLE instance shut down.
Operation requires startup of instance "primary" on database "PRIMARY"
Starting instance "primary"...
ORACLE instance started.
Database mounted.
DGMGRL> EDIT DATABASE 'STANDBY' SET PROPERTY LOGXPTMODE='SYNC';
Property "logxptmode" updated
SQL> alter system set undo_retention=3600 scope=both;
System altered.
SQL> show parameter undo
NAME TYPE VALUE
undo_management string AUTO
undo_retention integer 3600
undo_tablespace string UNDOTBS1
After doing the required methods, I enabled Fast-Start Failover;
DGMGRL> ENABLE FAST_START FAILOVER;
Enabled.
But When I run the following Command:
DGMGRL> START OBSERVER;
Observer started
I disconnected the Session and Login again, then it show me following Configuration:
DGMGRL> SHOW CONFIGURATION VERBOSE
Configuration
Name: DGCONFIG1
Enabled: YES
Protection Mode: MaxAvailability
Fast-Start Failover: ENABLED
Databases:
PRIMARY - Primary database
STANDBY - Physical standby database
- Fast-Start Failover target
Fast-Start Failover
Threshold: 30 seconds
Observer: Node5
Current status for "DGCONFIG1":
SUCCESS
Kindly tell me that is it working or I have to do more. Thanks
Regards,
Imran -
Data Guard data population issue
Hi ...
I have data guard config with a scenario that new user schema is created (couple tablespaces and datafiles). The tablespace is setup in NOLOGGING mode. After checking the physical standby server, the datafiles are created.
My questions:
1. How to re-sync data from primary to physical standby assuming schema has created and no data has populated?
2. How to drop the data in physical standby server on the same schema with primary server re. above issue, then start the objective on 1.?
My environments are in AIX 5L with 9.2.0.4 in Unicode character set.
Thanks in advance for any information.
Cheers.
BAMHi Justin.
Thanks for your reply.
I have restored the tablespaces to logging mode again, and redo schema creation and re-import the data to the schema. When I did the db switch over, the primary site successfully changed to standby -- the opposite works well also.
However, after querying these:
SELECT NAME, UNRECOVERABLE_CHANGE# FROM V$DATAFILE;
SELECT UNRECOVERABLE_CHANGE#,
TO_CHAR(UNRECOVERABLE_TIME, 'mm-dd-yyyy hh:mi:ss')
FROM V$DATAFILE;
on my primary site, there was 5591564 bytes of unrecoverable_change# on one of the datafile on 05-06-2004 02:44:48am. Then on 05-05-2004 10:51:34 the unrecoverable_change# was gone (becomes 0) for the same datafile.
In the doc. the unrecoverable_change# will be shown if somehow datablock error like following:
ORA-01578: ORACLE data block corrupted (file # 1, block # 2521)
ORA-01110: data file 1: '/oracle/dbs/stdby/tbs_1.dbf'
ORA-26040: Data block was loaded using the NOLOGGING option
happened. I've checked my logs in primary/standby alert logs and the data guard switch-over logs -- no similar error as above.
Any idea what was happened on above scenario?
Thanks.
BAM -
Data Guard - MRP stuck issues on a physical standby database
Hi,
Oracle 11.2.0.3 DG running. When i do a switchover the physical standby database has error with following error
ARC0: LGWR is actively archiving destination LOG_ARCHIVE_DEST_2
ARCH: Archival stopped, error occurred. Will continue retrying
ORACLE Instance <primaryDB> - Archival Error
On standby DB
SQL>select process, thread#, sequence#, status from v$managed_standby where process='MRP0';
PROCESS THREAD# SEQUENCE# STATUS
MRP0 1 548 APPLYING_LOG
So according to Oracle support link i executed following
SQL>recover managed standby database cancel;
SQL>recover automatic standby database;
The above seems to resolve the issue. What is causing is this?Hello again;
Those both look perfect. I combed through my notes and found nothing like this for your version.
Yes, I would open an SR since it appears you have done everything correct.
ORA-600 [3020] "Stuck Recovery" [ID 30866.1]
The "Known Bugs" section of the above has a few 11.2.0.3 entries.
Generally the MRP gets stuck because data Guard thinks there's a GAP, you run out of room in the FRA on the Standby, or redo logs are too small and the system is switching very fast.
Best Regards
mseberg
Later
Never asked you but this "log_archive_max_processes" can be set as high as 30.
Edited by: mseberg on Jul 16, 2012 8:01 PM
h2. Still later
Found this which is closer :
Bug 13553883 - Archiver stuck but no ORA-19xxx error in alert log (messages need changing) [ID 13553883.8] -
Info on licensing issues of standby databases/Oracle Data Guard
Hi All,
Could anyone possibly give me some information on licensing issues of standby databases/Oracle Data Guard? Links to some electronic articles or journals might be useful. I am unable to find the appropriate info and need this quite urgently for my dissertation asap as my deadline is this approaching.
Thanks in advancePaul Drake posted a reply to a similar question on the Oracle-L mailing list that pointed out that the License Agreement
http://oraclestore.oracle.com/OA_HTML/ibeCCtpSctDspRte.jsp?media=os_local_license_agreement§ion=11365&minisite=10021&respid=22372&grp=STORE&language=US
states, in part,
"Failover: Your license for the following programs, Oracle Database (Enterprise Edition, Standard Edition or Standard Edition One) and Oracle Internet Application Server (Enterprise Edition, Standard Edition, Standard Edition One or Java Edition) includes the right to run the licensed program(s) on an unlicensed spare computer in a failover environment for up to a total of ten separate days in any given calendar year. Any use beyond the right granted in the previous sentence must be licensed separately and the same license metric must be used when licensing the program(s)."
which seems to open a bit of wiggle room depending on how the term "run" is defined. This is probably also an area where your Oracle sales rep may have a little more flexibility to negotiate
Justin
Distributed Database Consulting, Inc.
http://www.ddbcinc.com/askDDBC -
Database issues after starting data guard
Hi. We run OEM12c in Linux. All is working well and we monitor several targets and DBs.
In our QA db server, sun solaris 11 running oracle 10g, we started to test data guard configuration for several instances we are running there. our standy server is called STDBY. All works fine, but now we have a problem managing some aspects of data guard with OEM12c.
First problem is that the instances appear as SID_IPaddress of server, as opposed as DB_UNIQUENAME.DB_DOMAIN. curiously enough, the std by copy, appears correctly (SID_sbyp.db_domain)... This is very puzzling...
Second problem is when we try to access the Data Guard performance pane, it fails showing (both in primary and secondary DBs)
Data Guard Internal Error : See the OMS log for details.
No clue where to look for this problem.
All other functions, TOP, performance home, etc... look fine.Hi ,
Regarding "Data Guard Internal Error : See the OMS log for details"
Follow the below steps
On the Data Guard Page run the 'Verify Configuration'-Option twice. The first Execution will show an Output like
Initializing
Connected to instance test.oracle.com:mydb
Starting alert log monitor...
Updating Data Guard link on database homepage...
WARNING: Broker name (mytest) and target name (mydb) do not match.
WARNING: The broker name will be renamed to match the target name.
Skipping verification of fast-start failover static services check.
Data Protection Settings:
Protection mode : Maximum Performance
Redo Transport Mode settings:
pnjpcep1: ASYNC
cnjpcep1: ASYNC
Checking standby redo log files.....not checked due to broker name mismatch. Run verify again.
Checking Data Guard status
mydb : Normal
my11g : Normal
Tthe second Execution does not show this Warning any more, ie. it got fixed during the first Execution. Now it's possible to access the Data Guard Performance Page without Errors and you can see the Statistics.
Ref
Cloud Control: "Data Guard Internal Error" raised on Data Guard Performance Page (Doc ID 1484028.1)
Regards,
Rahul -
Data-management-config.xml issue
My question is if i can have multiple
data-management-config.xml files? for a better administration i am
separating it into multiple files but when trying to access a
destination it fails so i assume this is not possible, is that
right?Ok imagine i have 30 destinations in one
data-management-config.xml, that's a lot of destinations, so when i
want to modify something in that file i need to look all over it to
find what i want, so instead of that it would be nice to being able
to have 3 data-management-config.xml files, with 10 destinations on
each, that way it would be easier to manage and update them.
This is requirement of the QA department, they don't want to
review a gigantic data-management-config.xml, they would prefer to
manage 3 or 4 files instead of one.
So the question is: IS this possible? or do i necessarily
need to use one and just one data-management-config.xml? -
Oracle 9i Backup/Restore with Data Guard Issues
Greetings,
I am currently using Oracle 9i Data Guard to have a Primary/Standby model.
The current implementation compares the backup piece id from the backed up image (taken from the Primary) with the backup piece id on the Standby db. If the number are not equal then the restore will fail.
1- Is this the best implementation for restoring on a standby?
2- Would it be better to give a permitted gap range between the backup piece ids between the two databases? and if so what would be an acceptable range?
3- In case the gap range discussed in #2 above is allowed, when the Standby is started as primary and the primary set to be standby, would the Data Guard automatically tries to retrieve all the missing archive/redo log files from the primary db?
ThanksHi,
I am not sure I am following you here. Are you trying to create a physical standby, by using a backup taken from the primary?
If this is what you're trying to do, you can take any hot backup from the primary and use it to sync the standby with your primary. The older the backup you're using to create the standby, the more archive logs you'll need to get synchronized.
As long as you have all the archive logs needed in the archive_log_dest, data guard will automatically retrieve all the missing logs, and apply them on the standby. Again, only if they are available on the primary.
Not sure If this is what you were asking...
Idan. -
Data Guard Failover after primary site network failure or disconnect.
Hello Experts:
I'll try to be clear and specific with my issue:
Environment:
Two nodes with NO shared storage (I don't have an Observer running).
Veritas Cluser Server (VCS) with Data Guar Agent. (I don't use the Broker. Data Guard agent "takes care" of the switchover and failover).
Two single instance databases, one per node. NO RAC.
What I'm being able to perform with no issues:
Manual switch(over) of the primary database by running VCS command "hagrp -switch oraDG_group -to standby_node"
Automatic fail(over) when primary node is rebooted with "reboot" or "init"
Automatic fail(over) when primary node is shut down with "shutdown".
What I'm NOT being able to perform:
If I manually unplug the network cables from the primary site (all the network, not only the link between primary and standby node so, it's like a server unplug from the energy source).
Same situation happens if I manually disconnect the server from the power.
This is the alert logs I have:
This is the portion of the alert log at Standby site when Real Time Replication is working fine:
Recovery of Online Redo Log: Thread 1 Group 4 Seq 7 Reading mem 0
Mem# 0: /u02/oracle/fast_recovery_area/standby_db/onlinelog/o1_mf_4_9c3tk3dy_.log
At this moment, node1 (Primary) is completely disconnected from the network. SEE at the end when the database (standby which should be converted to PRIMARY) is not getting all the archived logs from the Primary due to the abnormal disconnect from the network:
Identified End-Of-Redo (failover) for thread 1 sequence 7 at SCN 0xffff.ffffffff
Incomplete Recovery applied until change 15922544 time 12/23/2013 17:12:48
Media Recovery Complete (primary_db)
Terminal Recovery: successful completion
Forcing ARSCN to IRSCN for TR 0:15922544
Mon Dec 23 17:13:22 2013
ARCH: Archival stopped, error occurred. Will continue retrying
ORACLE Instance primary_db - Archival ErrorAttempt to set limbo arscn 0:15922544 irscn 0:15922544
ORA-16014: log 4 sequence# 7 not archived, no available destinations
ORA-00312: online log 4 thread 1: '/u02/oracle/fast_recovery_area/standby_db/onlinelog/o1_mf_4_9c3tk3dy_.log'
Resetting standby activation ID 2071848820 (0x7b7de774)
Completed: ALTER DATABASE RECOVER MANAGED STANDBY DATABASE FINISH
Mon Dec 23 17:13:33 2013
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE FINISH
Terminal Recovery: applying standby redo logs.
Terminal Recovery: thread 1 seq# 7 redo required
Terminal Recovery:
Recovery of Online Redo Log: Thread 1 Group 4 Seq 7 Reading mem 0
Mem# 0: /u02/oracle/fast_recovery_area/standby_db/onlinelog/o1_mf_4_9c3tk3dy_.log
Identified End-Of-Redo (failover) for thread 1 sequence 7 at SCN 0xffff.ffffffff
Incomplete Recovery applied until change 15922544 time 12/23/2013 17:12:48
Media Recovery Complete (primary_db)
Terminal Recovery: successful completion
Forcing ARSCN to IRSCN for TR 0:15922544
Mon Dec 23 17:13:22 2013
ARCH: Archival stopped, error occurred. Will continue retrying
ORACLE Instance primary_db - Archival ErrorAttempt to set limbo arscn 0:15922544 irscn 0:15922544
ORA-16014: log 4 sequence# 7 not archived, no available destinations
ORA-00312: online log 4 thread 1: '/u02/oracle/fast_recovery_area/standby_db/onlinelog/o1_mf_4_9c3tk3dy_.log'
Resetting standby activation ID 2071848820 (0x7b7de774)
Completed: ALTER DATABASE RECOVER MANAGED STANDBY DATABASE FINISH
Mon Dec 23 17:13:33 2013
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE FINISH
Attempt to do a Terminal Recovery (primary_db)
Media Recovery Start: Managed Standby Recovery (primary_db)
started logmerger process
Mon Dec 23 17:13:33 2013
Managed Standby Recovery not using Real Time Apply
Media Recovery failed with error 16157
Recovery Slave PR00 previously exited with exception 283
ORA-283 signalled during: ALTER DATABASE RECOVER MANAGED STANDBY DATABASE FINISH...
Mon Dec 23 17:13:34 2013
Shutting down instance (immediate)
Shutting down instance: further logons disabled
Stopping background process MMNL
Stopping background process MMON
License high water mark = 38
All dispatchers and shared servers shutdown
ALTER DATABASE CLOSE NORMAL
ORA-1109 signalled during: ALTER DATABASE CLOSE NORMAL...
ALTER DATABASE DISMOUNT
Shutting down archive processes
Archiving is disabled
Mon Dec 23 17:13:38 2013
Mon Dec 23 17:13:38 2013
Mon Dec 23 17:13:38 2013
ARCH shutting downARCH shutting down
ARCH shutting down
ARC0: Relinquishing active heartbeat ARCH role
ARC2: Archival stopped
ARC0: Archival stopped
ARC1: Archival stopped
Completed: ALTER DATABASE DISMOUNT
ARCH: Archival disabled due to shutdown: 1089
Shutting down archive processes
Archiving is disabled
Mon Dec 23 17:13:40 2013
Stopping background process VKTM
ARCH: Archival disabled due to shutdown: 1089
Shutting down archive processes
Archiving is disabled
Mon Dec 23 17:13:43 2013
Instance shutdown complete
Mon Dec 23 17:13:44 2013
Adjusting the default value of parameter parallel_max_servers
from 1280 to 470 due to the value of parameter processes (500)
Starting ORACLE instance (normal)
************************ Large Pages Information *******************
Per process system memlock (soft) limit = 64 KB
Total Shared Global Region in Large Pages = 0 KB (0%)
Large Pages used by this instance: 0 (0 KB)
Large Pages unused system wide = 0 (0 KB)
Large Pages configured system wide = 0 (0 KB)
Large Page size = 2048 KB
RECOMMENDATION:
Total System Global Area size is 3762 MB. For optimal performance,
prior to the next instance restart:
1. Increase the number of unused large pages by
at least 1881 (page size 2048 KB, total size 3762 MB) system wide to
get 100% of the System Global Area allocated with large pages
2. Large pages are automatically locked into physical memory.
Increase the per process memlock (soft) limit to at least 3770 MB to lock
100% System Global Area's large pages into physical memory
LICENSE_MAX_SESSION = 0
LICENSE_SESSIONS_WARNING = 0
Initial number of CPU is 32
Number of processor cores in the system is 16
Number of processor sockets in the system is 2
CELL communication is configured to use 0 interface(s):
CELL IP affinity details:
NUMA status: NUMA system w/ 2 process groups
cellaffinity.ora status: cannot find affinity map at '/etc/oracle/cell/network-config/cellaffinity.ora' (see trace file for details)
CELL communication will use 1 IP group(s):
Grp 0:
Picked latch-free SCN scheme 3
Autotune of undo retention is turned on.
IMODE=BR
ILAT =88
LICENSE_MAX_USERS = 0
SYS auditing is disabled
NUMA system with 2 nodes detected
Starting up:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options.
ORACLE_HOME = /u01/oracle/product/11.2.0.4
System name: Linux
Node name: node2.localdomain
Release: 2.6.32-131.0.15.el6.x86_64
Version: #1 SMP Tue May 10 15:42:40 EDT 2011
Machine: x86_64
Using parameter settings in server-side spfile /u01/oracle/product/11.2.0.4/dbs/spfileprimary_db.ora
System parameters with non-default values:
processes = 500
sga_target = 3760M
control_files = "/u02/oracle/orafiles/primary_db/control01.ctl"
control_files = "/u01/oracle/fast_recovery_area/primary_db/control02.ctl"
db_file_name_convert = "standby_db"
db_file_name_convert = "primary_db"
log_file_name_convert = "standby_db"
log_file_name_convert = "primary_db"
control_file_record_keep_time= 40
db_block_size = 8192
compatible = "11.2.0.4.0"
log_archive_dest_1 = "location=/u02/oracle/archivelogs/primary_db"
log_archive_dest_2 = "SERVICE=primary_db ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=primary_db"
log_archive_dest_state_2 = "ENABLE"
log_archive_min_succeed_dest= 1
fal_server = "primary_db"
log_archive_trace = 0
log_archive_config = "DG_CONFIG=(primary_db,standby_db)"
log_archive_format = "%t_%s_%r.dbf"
log_archive_max_processes= 3
db_recovery_file_dest = "/u02/oracle/fast_recovery_area"
db_recovery_file_dest_size= 30G
standby_file_management = "AUTO"
db_flashback_retention_target= 1440
undo_tablespace = "UNDOTBS1"
remote_login_passwordfile= "EXCLUSIVE"
db_domain = ""
dispatchers = "(PROTOCOL=TCP) (SERVICE=primary_dbXDB)"
job_queue_processes = 0
audit_file_dest = "/u01/oracle/admin/primary_db/adump"
audit_trail = "DB"
db_name = "primary_db"
db_unique_name = "standby_db"
open_cursors = 300
pga_aggregate_target = 1250M
dg_broker_start = FALSE
diagnostic_dest = "/u01/oracle"
Mon Dec 23 17:13:45 2013
PMON started with pid=2, OS id=29108
Mon Dec 23 17:13:45 2013
PSP0 started with pid=3, OS id=29110
Mon Dec 23 17:13:46 2013
VKTM started with pid=4, OS id=29125 at elevated priority
VKTM running at (1)millisec precision with DBRM quantum (100)ms
Mon Dec 23 17:13:46 2013
GEN0 started with pid=5, OS id=29129
Mon Dec 23 17:13:46 2013
DIAG started with pid=6, OS id=29131
Mon Dec 23 17:13:46 2013
DBRM started with pid=7, OS id=29133
Mon Dec 23 17:13:46 2013
DIA0 started with pid=8, OS id=29135
Mon Dec 23 17:13:46 2013
MMAN started with pid=9, OS id=29137
Mon Dec 23 17:13:46 2013
DBW0 started with pid=10, OS id=29139
Mon Dec 23 17:13:46 2013
DBW1 started with pid=11, OS id=29141
Mon Dec 23 17:13:46 2013
DBW2 started with pid=12, OS id=29143
Mon Dec 23 17:13:46 2013
DBW3 started with pid=13, OS id=29145
Mon Dec 23 17:13:46 2013
LGWR started with pid=14, OS id=29147
Mon Dec 23 17:13:46 2013
CKPT started with pid=15, OS id=29149
Mon Dec 23 17:13:46 2013
SMON started with pid=16, OS id=29151
Mon Dec 23 17:13:46 2013
RECO started with pid=17, OS id=29153
Mon Dec 23 17:13:46 2013
MMON started with pid=18, OS id=29155
Mon Dec 23 17:13:46 2013
MMNL started with pid=19, OS id=29157
starting up 1 dispatcher(s) for network address '(ADDRESS=(PARTIAL=YES)(PROTOCOL=TCP))'...
starting up 1 shared server(s) ...
ORACLE_BASE from environment = /u01/oracle
Mon Dec 23 17:13:46 2013
ALTER DATABASE MOUNT
ARCH: STARTING ARCH PROCESSES
Mon Dec 23 17:13:50 2013
ARC0 started with pid=23, OS id=29210
ARC0: Archival started
ARCH: STARTING ARCH PROCESSES COMPLETE
ARC0: STARTING ARCH PROCESSES
Successful mount of redo thread 1, with mount id 2071851082
Mon Dec 23 17:13:51 2013
ARC1 started with pid=24, OS id=29212
Allocated 15937344 bytes in shared pool for flashback generation buffer
Mon Dec 23 17:13:51 2013
ARC2 started with pid=25, OS id=29214
Starting background process RVWR
ARC1: Archival started
ARC1: Becoming the 'no FAL' ARCH
ARC1: Becoming the 'no SRL' ARCH
Mon Dec 23 17:13:51 2013
RVWR started with pid=26, OS id=29216
Physical Standby Database mounted.
Lost write protection disabled
Completed: ALTER DATABASE MOUNT
Mon Dec 23 17:13:51 2013
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE
USING CURRENT LOGFILE DISCONNECT FROM SESSION
Attempt to start background Managed Standby Recovery process (primary_db)
Mon Dec 23 17:13:51 2013
MRP0 started with pid=27, OS id=29219
MRP0: Background Managed Standby Recovery process started (primary_db)
ARC2: Archival started
ARC0: STARTING ARCH PROCESSES COMPLETE
ARC2: Becoming the heartbeat ARCH
ARC2: Becoming the active heartbeat ARCH
ARCH: Archival stopped, error occurred. Will continue retrying
ORACLE Instance primary_db - Archival Error
ORA-16014: log 4 sequence# 7 not archived, no available destinations
ORA-00312: online log 4 thread 1: '/u02/oracle/fast_recovery_area/standby_db/onlinelog/o1_mf_4_9c3tk3dy_.log'
At this moment, I've lost service and I have to wait until the prmiary server goes up again to receive the missing log.
This is the rest of the log:
Fatal NI connect error 12543, connecting to:
(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=node1)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=primary_db)(CID=(PROGRAM=oracle)(HOST=node2.localdomain)(USER=oracle))))
VERSION INFORMATION:
TNS for Linux: Version 11.2.0.4.0 - Production
TCP/IP NT Protocol Adapter for Linux: Version 11.2.0.4.0 - Production
Time: 23-DEC-2013 17:13:52
Tracing not turned on.
Tns error struct:
ns main err code: 12543
TNS-12543: TNS:destination host unreachable
ns secondary err code: 12560
nt main err code: 513
TNS-00513: Destination host unreachable
nt secondary err code: 113
nt OS err code: 0
Fatal NI connect error 12543, connecting to:
(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=node1)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=primary_db)(CID=(PROGRAM=oracle)(HOST=node2.localdomain)(USER=oracle))))
VERSION INFORMATION:
TNS for Linux: Version 11.2.0.4.0 - Production
TCP/IP NT Protocol Adapter for Linux: Version 11.2.0.4.0 - Production
Time: 23-DEC-2013 17:13:55
Tracing not turned on.
Tns error struct:
ns main err code: 12543
TNS-12543: TNS:destination host unreachable
ns secondary err code: 12560
nt main err code: 513
TNS-00513: Destination host unreachable
nt secondary err code: 113
nt OS err code: 0
started logmerger process
Mon Dec 23 17:13:56 2013
Managed Standby Recovery starting Real Time Apply
MRP0: Background Media Recovery terminated with error 16157
Errors in file /u01/oracle/diag/rdbms/standby_db/primary_db/trace/primary_db_pr00_29230.trc:
ORA-16157: media recovery not allowed following successful FINISH recovery
Managed Standby Recovery not using Real Time Apply
Completed: ALTER DATABASE RECOVER MANAGED STANDBY DATABASE
USING CURRENT LOGFILE DISCONNECT FROM SESSION
Recovery Slave PR00 previously exited with exception 16157
MRP0: Background Media Recovery process shutdown (primary_db)
Fatal NI connect error 12543, connecting to:
(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=node1)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=primary_db)(CID=(PROGRAM=oracle)(HOST=node2.localdomain)(USER=oracle))))
VERSION INFORMATION:
TNS for Linux: Version 11.2.0.4.0 - Production
TCP/IP NT Protocol Adapter for Linux: Version 11.2.0.4.0 - Production
Time: 23-DEC-2013 17:13:58
Tracing not turned on.
Tns error struct:
ns main err code: 12543
TNS-12543: TNS:destination host unreachable
ns secondary err code: 12560
nt main err code: 513
TNS-00513: Destination host unreachable
nt secondary err code: 113
nt OS err code: 0
Mon Dec 23 17:14:01 2013
Fatal NI connect error 12543, connecting to:
(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=node1)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=primary_db)(CID=(PROGRAM=oracle)(HOST=node2.localdomain)(USER=oracle))))
VERSION INFORMATION:
TNS for Linux: Version 11.2.0.4.0 - Production
TCP/IP NT Protocol Adapter for Linux: Version 11.2.0.4.0 - Production
Time: 23-DEC-2013 17:14:01
Tracing not turned on.
Tns error struct:
ns main err code: 12543
TNS-12543: TNS:destination host unreachable
ns secondary err code: 12560
nt main err code: 513
TNS-00513: Destination host unreachable
nt secondary err code: 113
nt OS err code: 0
Error 12543 received logging on to the standby
FAL[client, ARC0]: Error 12543 connecting to primary_db for fetching gap sequence
Archiver process freed from errors. No longer stopped
Mon Dec 23 17:15:07 2013
Using STANDBY_ARCHIVE_DEST parameter default value as /u02/oracle/archivelogs/primary_db
Mon Dec 23 17:19:51 2013
ARCH: Archival stopped, error occurred. Will continue retrying
ORACLE Instance primary_db - Archival Error
ORA-16014: log 4 sequence# 7 not archived, no available destinations
ORA-00312: online log 4 thread 1: '/u02/oracle/fast_recovery_area/standby_db/onlinelog/o1_mf_4_9c3tk3dy_.log'
Mon Dec 23 17:26:18 2013
RFS[1]: Assigned to RFS process 31456
RFS[1]: No connections allowed during/after terminal recovery.
Mon Dec 23 17:26:47 2013
flashback database to scn 15921680
ORA-16157 signalled during: flashback database to scn 15921680...
Mon Dec 23 17:27:05 2013
alter database recover managed standby database using current logfile disconnect
Attempt to start background Managed Standby Recovery process (primary_db)
Mon Dec 23 17:27:05 2013
MRP0 started with pid=28, OS id=31481
MRP0: Background Managed Standby Recovery process started (primary_db)
started logmerger process
Mon Dec 23 17:27:10 2013
Managed Standby Recovery starting Real Time Apply
MRP0: Background Media Recovery terminated with error 16157
Errors in file /u01/oracle/diag/rdbms/standby_db/primary_db/trace/primary_db_pr00_31486.trc:
ORA-16157: media recovery not allowed following successful FINISH recovery
Managed Standby Recovery not using Real Time Apply
Completed: alter database recover managed standby database using current logfile disconnect
Recovery Slave PR00 previously exited with exception 16157
MRP0: Background Media Recovery process shutdown (primary_db)
Mon Dec 23 17:27:18 2013
RFS[2]: Assigned to RFS process 31492
RFS[2]: No connections allowed during/after terminal recovery.
Mon Dec 23 17:28:18 2013
RFS[3]: Assigned to RFS process 31614
RFS[3]: No connections allowed during/after terminal recovery.
Do you have any advice?
Thanks!
Alex.Hello;
What's not clear to me in your question at this point:
What I'm NOT being able to perform:
If I manually unplug the network cables from the primary site (all the network, not only the link between primary and standby node so, it's like a server unplug from the energy source).
Same situation happens if I manually disconnect the server from the power.
This is the alert logs I have:"
Are you trying a failover to the Standby?
Please advise.
Is it possible your "valid_for clause" is set incorrectly?
Would also review this:
ORA-16014 and ORA-00312 Messages in Alert.log of Physical Standby
Best Regards
mseberg -
Data Guard adding new data files to a tablespace.
In the past, if you were manually updating an Oracle physical standby database there were issues with adding a data file to a tablespace. It was suggested that the data file should be created small and then the small physical file copied to the standby database. Once the small data file was in place it would be resized on the primary database then the repication would change the size on the standby.
My question is, does Data Guard take care of this automaticlly for a physical standby? I can't find any specific reference on how it handles a new datafile.Never mind, I found the answer.
STANDBY_FILE_MANAGEMENT=auto
Set on the standby database will create the datafiles. -
Problem with logminer in Data Guard configuration
Hi all,
I experience strange problem with applying of the logs in DataGuard configuration on the logical standby database side.
I've set up the configuration step by step as it is described in documentation (Oracle Data Guard Concepts and Administration, chapter 4).
Everything went fine until I issued
ALTER DATABASE START LOGICAL STANDBY APPLY;
I saw that log applying process was started by checking the output of
SELECT NAME, VALUE FROM V$LOGSTDBY_STATS WHERE NAME = 'coordinator state';
and
SELECT TYPE, HIGH_SCN, STATUS FROM V$LOGSTDBY;
but in few minutes it stoped and quering DBA_LOGSTDBY_EVENTS I saw the following records:
ORA-16111: log mining and apply setting up
ORA-01332: internal Logminer Dictionary error
Alert log says the following:
LOGSTDBY event: ORA-01332: internal Logminer Dictionary error
Wed Jan 21 16:57:57 2004
Errors in file /opt/oracle/admin/whouse/bdump/whouse_lsp0_5817.trc:
ORA-01332: internal Logminer Dictionary error
Here is the end of the whouse_lsp0_5817.trc
error 1332 detected in background process
OPIRIP: Uncaught error 447. Error stack:
ORA-00447: fatal error in background process
ORA-01332: internal Logminer Dictionary error
But the most useful info I found in one more trace file (whouse_p001_5821.trc):
krvxmrs: Leaving by exception: 604
ORA-00604: error occurred at recursive SQL level 1
ORA-01031: insufficient privileges
ORA-06512: at "SYS.LOGMNR_KRVRDREPDICT3", line 68
ORA-06512: at line 1
Seems that somewhere the correct privileges were not given or smth like this. By the way I was doing all the operations under SYS account (as SYSDBA).
Could smb give me a clue where could be my mistake or what was done in the wrong way?
Thank you in advance.Which is your SSIS version?
Please Mark This As Answer if it solved your issue
Please Vote This As Helpful if it helps to solve your issue
Visakh
My MSDN Page
My Personal Blog
My Facebook Page -
What is wrong with my Data Guard system?
What is wrong with my Data Guard system(10g10.2.0 on OEL5.0)? What method should I take to diagnose it and repair it?
After shutting down last night, my Data Guard does not run normally today.
On the primary database I issue the following commands:
DGMGRL> show configuration verbose;
Configuration
Name: sdb10g
Enabled: YES
Protection Mode: MaxAvailability
Fast-Start Failover: ENABLED
Databases:
sdb10g - Primary database
stdby10g - Physical standby database
- Fast-Start Failover target
Fast-Start Failover
Threshold: 30 seconds
Observer: hostp
Current status for "sdb10g":
Warning: ORA-16607: one or more databases have failed
DGMGRL> show fast_start failover;
show fast_start failover;
Syntax error before or at "fast_start"
SQL> startup
ORACLE instance started.
Database mounted.
ORA-16649: database will open after Data Guard broker has evaluated Fast-Start
Failover status
On the physical standby database I issue the commands:
SQL> startup mount
ORACLE instance started.
Database mounted.
SQL> recover managed standby database disconnect;
Media recovery complete.
DGMGRL> show configuration verbose;
Configuration
Name: sdb10g
Enabled: YES
Protection Mode: MaxAvailability
Fast-Start Failover: ENABLED
Databases:
sdb10g - Primary database
stdby10g - Physical standby database
- Fast-Start Failover target
Fast-Start Failover
Threshold: 30 seconds
Observer: hostp
Current status for "sdb10g":
Warning: ORA-16607: one or more databases have failed
DGMGRL> disable fast_start failover;
Error: ORA-01034: ORACLE not available
Failed.
Message was edited by:
frank.qian
null
nullThe primary database cannot be opened and the fast_start failover cannot be discabled:
SQL> SQL> ALTER DATABASE open
ERROR at line 1:
ORA-16649: database will open after Data Guard broker has evaluated Fast-Start
Failover status
DGMGRL> disable fast_start failover;
Error: ORA-01034: ORACLE not available -
Clarification on Data Guard(Physical Standyb db)
Hi guys,
I have been trying to setup up Data Guard with a physical standby database for the past few weeks and I think I have managed to setup it up and also perform a switchover. I have been reading a lot of websites and even Oracle Docs for this.
However I need clarification on the setup and whether or not it is working as expected.
My environment is Windows 32bit (Windows 2003)
Oracle 10.2.0.2 (Client/Server)
2 Physical machines
Here is what I have done.
Machine 1
1. Create a primary database using standard DBCA, hence the Oracle service(oradgp) and password file are also created along with the listener service.
2. Modify the pfile to include the following:-
oradgp.__db_cache_size=436207616
oradgp.__java_pool_size=4194304
oradgp.__large_pool_size=4194304
oradgp.__shared_pool_size=159383552
oradgp.__streams_pool_size=0
*.audit_file_dest='M:\oracle\product\10.2.0\admin\oradgp\adump'
*.background_dump_dest='M:\oracle\product\10.2.0\admin\oradgp\bdump'
*.compatible='10.2.0.3.0'
*.control_files='M:\oracle\product\10.2.0\oradata\oradgp\control01.ctl','M:\oracle\product\10.2.0\oradata\oradgp\control02.ctl','M:\oracle\product\10.2.0\oradata\oradgp\control03.ctl'
*.core_dump_dest='M:\oracle\product\10.2.0\admin\oradgp\cdump'
*.db_block_size=8192
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_name='oradgp'
*.db_recovery_file_dest='M:\oracle\product\10.2.0\flash_recovery_area'
*.db_recovery_file_dest_size=21474836480
*.fal_client='oradgp'
*.fal_server='oradgs'
*.job_queue_processes=10
*.log_archive_dest_1='LOCATION=E:\ArchLogs VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=oradgp'
*.log_archive_dest_2='SERVICE=oradgs LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=oradgs'
*.log_archive_format='ARC%S_%R.%T'
*.log_archive_max_processes=30
*.nls_territory='IRELAND'
*.open_cursors=300
*.pga_aggregate_target=203423744
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=612368384
*.standby_file_management='auto'
*.undo_management='AUTO'
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='M:\oracle\product\10.2.0\admin\oradgp\udump'
*.service_names=oradgp
The locations on the harddisk are all available and archived redo are created (e:\archlogs)
3. I then add the necessary (4) standby logs on primary.
4. To replicate the db on the machine 2(standby db), I did an RMAN backup as:-
RMAN> run
{allocate channel d1 type disk format='M:\DGBackup\stby_%U.bak';
backup database plus archivelog delete input;
5. I then copied over the standby~.bak files created from machine1 to machine2 to the same directory (M:\DBBackup) since I maintained the directory structure exactly the same between the 2 machines.
6. Then created a standby controlfile. (At this time the db was in open/write mode).
7. I then copied this standby ctl file to machine2 under the same directory structure (M:\oracle\product\10.2.0\oradata\oradgp) and replicated the same ctl file into 3 different files such as: CONTROL01.CTL, CONTROL02.CTL & CONTROL03.CTL
Machine2
8. I created an Oracle service called the same as primary (oradgp).
9. Created a listener also.
9. Set the Oracle Home & SID to the same name as primary (oradgp) <<<-- I am not sure about the sid one.
10. I then copied over the pfile from the primary to standby and created an spfile with this one.
It looks like this:-
oradgp.__db_cache_size=436207616
oradgp.__java_pool_size=4194304
oradgp.__large_pool_size=4194304
oradgp.__shared_pool_size=159383552
oradgp.__streams_pool_size=0
*.audit_file_dest='M:\oracle\product\10.2.0\admin\oradgp\adump'
*.background_dump_dest='M:\oracle\product\10.2.0\admin\oradgp\bdump'
*.compatible='10.2.0.3.0'
*.control_files='M:\oracle\product\10.2.0\oradata\oradgp\control01.ctl','M:\oracle\product\10.2.0\oradata\oradgp\control02.ctl','M:\oracle\product\10.2.0\oradata\oradgp\control03.ctl'
*.core_dump_dest='M:\oracle\product\10.2.0\admin\oradgp\cdump'
*.db_block_size=8192
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_name='oradgp'
*.db_recovery_file_dest='M:\oracle\product\10.2.0\flash_recovery_area'
*.db_recovery_file_dest_size=21474836480
*.fal_client='oradgs'
*.fal_server='oradgp'
*.job_queue_processes=10
*.log_archive_dest_1='LOCATION=E:\ArchLogs VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=oradgs'
*.log_archive_dest_2='SERVICE=oradgp LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=oradgp'
*.log_archive_format='ARC%S_%R.%T'
*.log_archive_max_processes=30
*.nls_territory='IRELAND'
*.open_cursors=300
*.pga_aggregate_target=203423744
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=612368384
*.standby_file_management='auto'
*.undo_management='AUTO'
*.undo_tablespace='UNDOTBS1'
*.user_dump_dest='M:\oracle\product\10.2.0\admin\oradgp\udump'
*.service_names=oradgs
log_file_name_convert='junk','junk'
11. User RMAN to restore the db as:-
RMAN> startup mount;
RMAN> restore database;
Then RMAN created the datafiles.
12. I then added the same number (4) of standby redo logs to machine2.
13. Also added a tempfile though the temp tablespace was created per the restore via RMAN, I think the actual file (temp01.dbf) didn't get created, so I manually created the tempfile.
14. Ensuring the listener and Oracle service were running and that the database on machine2 was in MOUNT mode, I then started the redo apply using:-
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
It seems to have started the redo apply as I've checked the alert log and noticed that the sequence# was all "YES" for applied.
****However I noticed that in the alert log the standby was complaining about the online REDO log not being present****
So copied over the REDO logs from the primary machine and placed them in the same directory structure of the standby.
########Q1. I understand that the standby database does not need online REDO Logs but why is it reporting in the alert log then??########
I wanted to enable realtime apply so, I cancelled the recover by :-
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
and issued:-
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT;
This too was successful and I noticed that the recovery mode is set to MANAGED REAL TIME APPLY.
Checked this via the primary database also and it too reported that the DEST_2 is in MANAGED REAL TIME APPLY.
Also performed a log swith on primary and it got transported to the standby and was applied (YES).
Also ensured that there are no gaps via some queries where no rows were returned.
15. I now wanted to perform a switchover, hence issued:-
Primary_SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY WITH SESSION SHUTDOWN;
All the archivers stopped as expected.
16. Now on machine2:
Stdby_SQL> ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY;
17. On machine1:
Primary_Now_Standby_SQL>SHUTDOWN IMMEDIATE;
Primary_Now_Standby_SQL>STARTUP MOUNT;
Primary_Now_Standby_SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT;
17. On machine2:
Stdby_Now_Primary_SQL>ALTER DATABASE OPEN;
Checked by switching the logfile on the new primary and ensured that the standby received this logfile and was applied (YES).
However, here are my questions for clarifications:-
Q1. There is a question about ONLINE REDO LOGS within "#" characters.
Q2. Do you see me doing anything wrong in regards to naming the directory structures? Should I have renamed the dbname directory in the Oracle Home to oradgs rather than oradgp?
Q3. When I enabled real time apply does that mean, that I am not in 'MANAGED' mode anymore? Is there an un-managed mode also?
Q4. After the switchover, I have noticed that the MRP0 process is "APPLYING LOG" status to a sequence# which is not even the latest sequence# as per v$archived_log. By this I mean:-
SQL> SELECT PROCESS, STATUS, THREAD#, SEQUENCE#, BLOCK#, BLOCKS,FROM V$MANAGED_STANDBY;
MRP0 APPLYING_LOG 1 47 452 1024000
but :
SQL> select max(sequence#) from v$archived_log;
46
Why is that? Also I have noticed that one of the sequence#s is NOT applied but the later ones are:-
SQL> SELECT SEQUENCE#,APPLIED FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;
42 NO
43 YES
44 YES
45 YES
46 YES
What could be the possible reasons why sequence# 42 didn't get applied but the others did?
After reading several documents I am confused at this stage because I have read that you can setup standby databases using 'standby' logs but is there another method without using standby logs?
Q5. The log switch isn't happening automatically on the primary database where I could see the whole process happening on it own, such as generation of a new logfile, that being transported to the standby and then being applied on the standby.
Could this be due to inactivity on the primary database as I am not doing anything on it?
Sorry if I have missed out something guys but I tried to put in as much detail as I remember...
Thank you very much in advance.
Regards,
Bharath
Edited by: Bharath3 on Jan 22, 2010 2:13 AMParameters:
Missing on the Primary:
DB_UNIQUE_NAME=oradgp
LOG_ARCHIVE_CONFIG=DG_CONFIG=(oradgp, oradgs)
Missing on the Standby:
DB_UNIQUE_NAME=oradgs
LOG_ARCHIVE_CONFIG=DG_CONFIG=(oradgp, oradgs)
You said: Also added a tempfile though the temp tablespace was created per the restore via RMAN, I think the actual file (temp01.dbf) didn't get created, so I manually created the tempfile.
RMAN should have also added the temp file. Note that as of 11g RMAN duplicate for standby will also add the standby redo log files at the standby if they already existed on the Primary when you took the backup.
You said: ****However I noticed that in the alert log the standby was complaining about the online REDO log not being present****
That is just the weird error that the RDBMS returns when the database tries to find the online redo log files. You see that at the start of the MRP because it tries to open them and if it gets the error it will manually create them based on their file definition in the controlfile combined with LOG_FILE_NAME_CONVERT if they are in a different place from the Primary.
Your questions (Q1 answered above):
You said: Q2. Do you see me doing anything wrong in regards to naming the directory structures? Should I have renamed the dbname directory in the Oracle Home to oradgs rather than oradgp?
Up to you. Not a requirement.
You said: Q3. When I enabled real time apply does that mean, that I am not in 'MANAGED' mode anymore? Is there an un-managed mode also?
You are always in MANAGED mode when you use the RECOVER MANAGED STANDBY DATABASE command. If you use manual recovery "RECOVER STANDBY DATABASE" (NOT RECOMMENDED EVER ON A STANDBY DATABASE) then you are effectively in 'non-managed' mode although we do not call it that.
You said: Q4. After the switchover, I have noticed that the MRP0 process is "APPLYING LOG" status to a sequence# which is not even the latest sequence# as per v$archived_log. By this I mean:-
Log 46 (in your example) is the last FULL and ARCHIVED log hence that is the latest one to show up in V$ARCHIVED_LOG as that is a list of fully archived log files. Sequence 47 is the one that is current in the Primary online redo log and also current in the standby's standby redo log and as you are using real time apply that is the one it is applying.
You said: What could be the possible reasons why sequence# 42 didn't get applied but the others did?
42 was probably a gap. Select the FAL columns as well and it will proably say 'YES' for FAL. We do not update the Primary's controlfile everytime we resolve a gap. Try the same command on the standby and you will see that 42 was indeed applied. Redo can never be applied out of order so the max(sequence#) from v$archived_log where applied = 'YES' will tell you that every sequence before that number has to have been applied.
You said: After reading several documents I am confused at this stage because I have read that you can setup standby databases using 'standby' logs but is there another method without using standby logs?
Yes, If you do not have standby redo log files on the standby then we write directly to an archive log. Which means potential large data loss at failover and no real time apply. That was the old 9i method for ARCH. Don't do that. Always have standby redo logs (SRL)
You said: Q5. The log switch isn't happening automatically on the primary database where I could see the whole process happening on it own, such as generation of a new logfile, that being transported to the standby and then being applied on the standby.
Could this be due to inactivity on the primary database as I am not doing anything on it?
Log switches on the Primary happen when the current log gets full, a log switch has not happened for the number of seconds you specified in the ARCHIVE_LAG_TARGET parameter or you say ALTER SYSTEM SWITCH LOGFILE (or the other methods for switching log files. The heartbeat redo will eventually fill up an online log file but it is about 13 bytes so you do the math on how long that would take :^)
You are shipping redo with ASYNC so we send the redo as it is commited, there is no wait for the log switch. And we are in real time apply so there is no wait for the log switch to apply that redo. In theroy you could create an online log file large enough to hold an entire day's worth of redo and never switch for the whole day and the standby would still be caught up with the primary.
Maybe you are looking for
-
Mapping Issue in JDBC-- XI-- RFC
Hi All, I have developed a scenario, where data flow is as follows... sql->JDBC sender-> XI->RFC Reciever---> SAP. Now, the data is retrieved from SQL and queued in Message monitoring. I am unable to pass it to RFC reciever and then to SAP. I hope it
-
Rotate HD video recording on my Mac
Not strictly an iPhone question, but I can imagine I'm not the only iPhone user one with this problem: I started to record a video holding my iPhone vertically, and when I realised this, I turned it horizontally. So now I have a five minute video in
-
How to change the Hello Portlet in Jetspeed2 Demo
hi ppl, I am having a big problem.. I can't change the portlet title, hello portlet, in the jetspeed 2 demo. The strange things is that i am able to change the title of the pickANumber portlet. @ Portlet.xml <portlet id="PickANumberPortlet"> <init-pa
-
Photo order in appletv screensaver?
I am trying to use my photos as a screensaver and they do not show in the right order. Im running Mac OS X version 10.7.5 and my apple tv is MD199LL/A. Thanks.
-
Problem with 'append' syntax in ECC 6.0
i am upgrading a old report i got a unicode error actually the report has the followig structure tables: arc_buffer. DATA: BEGIN OF class_package OCCURS 0. INCLUDE STRUCTURE arch_packa. DATA: END OF class_package. now the report has fo