FAL_SERVER and FAL_CLIENT
Hi to all,
I am going throught the Dataguard Concepts and Administration Docs.
I have one doubt.
For Eg: My primary db is named as : PRD
Standby DB is name as: PRDSTBY
Now with respect to the init parameters, I mentioning
FAL_CLIENT = PRDSTBY (in PRD init file)
FAL_SERVER = PRD (in prd but this works when switch over right?)
FAL_CLIENT = PRDSTBY (in prdstby but this works when switch over right?)
FAL_SERVER = PRD (in PRDSTBY)
Is my understanding is correct?
Regards,
Vijayaraghavan K
Hi
FAL_CLIENT is the one that is requesting the logs to be applied (the standby server)
FAL_SERVER is the one that is sending the logs to be applied (the primary server)
when you want to test failover and want to make your primary as standby and standby as primary, then the roles become opposite and the FAL_CLIENT, FAL-SERVER would be different.
There is a good paper by Alejandro Varjas where he explains the concepts with a very good demo.
Hope this helps
MSK
Similar Messages
-
Multiple standby database about FAL_SERVER and FAL_CLIENT parameter in DG
Hi,
I am little bit confused about FAL_SERVER and FAL_CLIENT parameter in Data Guard.
We are planning to configure multiple standby database in Data Guard environment. Let Assume that, i have production db named as 'PROD' and multiple standby name like standby1,standby2, standby3.
My Environment is:_
DB Version: 11.2.0.1
OS Version: OE5LU6
So in this case how to specify above Net service name in spfile on production server and also on other standby server.
Kindly Suggests me.
Regards
AthishAthish wrote:
Hi,
I am little bit confused about FAL_SERVER and FAL_CLIENT parameter in Data Guard.
We are planning to configure multiple standby database in Data Guard environment. Let Assume that, i have production db named as 'PROD' and multiple standby name like standby1,standby2, standby3.
My Environment is:_
DB Version: 11.2.0.1
OS Version: OE5LU6
So in this case how to specify above Net service name in spfile on production server and also on other standby server.
Kindly Suggests me.
Regards
AthishFAL_CLIENT is Oracle TNS service of the local system and FAL_SERVER is Oracle TNS service of remote system.
if you have three standby databases of primary , then from primary you must have three values in FAL_SERVER so that archives will be send to the all destinations.
and From the stadnby database, FAL_SERVER should be the oracle TNS service where you receiving the archive log files,
Note:- If you have RAC primary then mention each service differentiated by commas as shown example below.
From standby to Primary RAC:- FAL_SAERVER='PROD1','PROD2'
These parameters are dynamic, so that you can alter them at any time.
HTH. -
FAL_SERVER and FAL_CLIENT in 11.2
DB versions: 11.2.0.2, 11.2.0.3
Platform : RHEL 6, Solaris 10
2-Node RAC, Maximum Availability Mode
Starting from 11.2 , FAL_SERVER and FAL_CLIENT parameters do not have to be set at the standby DB side. Right ?Y.Ramlet wrote:
DB versions: 11.2.0.2, 11.2.0.3
Platform : RHEL 6, Solaris 10
2-Node RAC, Maximum Availability Mode
Starting from 11.2 , FAL_SERVER and FAL_CLIENT parameters do not have to be set at the standby DB side. Right ?FAL_SERVER & FAL_CLIENT used for the gap resolution, FAL_CLIENT is the system receiving archivelogs. So better to configure where this can work efficiently to resolve the GAP
Read parameter in detail here
FAL_CLIENT --> http://docs.oracle.com/cd/E11882_01/server.112/e17110/initparams086.htm
FAL_SERVER --> http://docs.oracle.com/cd/E14072_01/server.112/e10820/initparams081.htm
Apologize, for the latest patchset of 11.2 you no need to mention FAL_CLIENT. Mseberg mentioned perfect link. Thank you.
Edited by: CKPT on Feb 5, 2013 9:33 PM -
FAL_SERVER and FAL_CLIENT - Please help me
Sir,
What is the difference between FAL_SERVER and FAL_CLIENT?
How we can configure this on Primary and Satndby databases? What
will be the changes happen to this parameters at the time of
Switchover and Failover?
Please help me.
regards
MathewNote: Primary Database Name = Chicago.
Standby Database Name = Boston
Example 3-2 Primary Database: Standby Role Initialization Parameters
FAL_SERVER=boston
FAL_CLIENT=chicago
DB_FILE_NAME_CONVERT=
'/arch1/boston/','/arch1/chicago/','/arch2/boston/','/arch2/chicago/'
LOG_FILE_NAME_CONVERT=
'/arch1/boston/','/arch1/chicago/','/arch2/boston/','/arch2/chicago/'
STANDBY_FILE_MANAGEMENT=AUTO
FAL_SERVER
Specify the Oracle Net service name of the FAL server (typically this is the database running in the primary role). When the Chicago database is running in the standby role, it uses the Boston database as the FAL server from which to fetch (request) missing archived redo log files if Boston is unable to automatically send the missing log files. See Section 5.8.
FAL_CLIENT
Specify the Oracle Net service name of the Chicago database. The FAL server (Boston) copies missing archived redo log files to the Chicago standby database. See Section 5.8.
Example 3-3 Modifying Initialization Parameters for a Physical Standby Database
INSTANCE_NAME=boston
FAL_SERVER=chicago
FAL_CLIENT=boston
FAL_CLIENTSpecify the Oracle Net service name of the FAL server (typically this is the database running in the primary role). When the Boston database is running in the standby role, it uses the Chicago database as the FAL server from which to fetch (request) missing archived redo log files if Chicago is unable to automatically send the missing log files. See Section 5.8.
FAL_CLIENT
Specify the Oracle Net service name of the Boston database. The FAL server (Chicago) copies missing archived redo log files to the Boston standby database. See Section 5.8.
>>>>http://download-uk.oracle.com/docs/cd/B14117_01/server.101/b10823/create_ps.htm#68627
Message was edited by:
user526020 -
Fal_srver and fal_client doubt
Hi friends,
I have doubt on this parameter FAL_SERVER and Fal_client.
1.In oracle 11g FAL_CLIENT initialization no more required. then what about FAL_SERVER parameter ?
2.Is it mandatory to initialize the parameters during data guard configuration FAL_SERVER and FAL_CLIENT ?
3.if not mandatory then how automatic gap resolution done in case of dataguard ?
4.what is the role of archiver process in dataguard gap resolution ?
Thanks & Regards
AryaHi,
1.In oracle 11g FAL_CLIENT initialization no more required. then what about FAL_SERVER parameter ?
Yes, after 11g version FAL_CLIENT is no more required. FAL_SERVER parameter is require for data guard configuration.
2.Is it mandatory to initialize the parameters during data guard configuration FAL_SERVER and FAL_CLIENT ?
FAL_SERVER paramater is only for mandatory standby database. because, RFS using FAL_SERVER parameter for request redo changes.
FAL_SERVER is primary database.
3.if not mandatory then how automatic gap resolution done in case of dataguard ?
It is mandatory. When Automatic Gap Resolution is using standby database, RFS process using FAL_SERVER parameter for request
redo from primary for resolution redo gap.
4.what is the role of archiver process in dataguard gap resolution ?
When occur redo gap. Standby send request to primary via RFS, requested archive log sequence#.
NLS send info to ARCH process, and ARCH process connecting to standby RFS and sending requested archived log.
and MRP apply received archived logs.
Regards
Mahir M. Quluzade
http://www.mahir-quluzade.com -
Archived log missed in standby database
Hi,
OS; Windows 2003 server
Oracle: 10.2.0.4
Data Guard: Max Performance
Dataguard missed some of the archivelog files and but latest log files are applying. standby database is not in sync with primary.
SELECT LOCAL.THREAD#, LOCAL.SEQUENCE# FROM (SELECT THREAD#, SEQUENCE# FROM V$ARCHIVED_LOG WHERE DEST_ID=1) LOCAL WHERE LOCAL.SEQUENCE# NOT IN (SELECT SEQUENCE# FROM V$ARCHIVED_LOG WHERE DEST_ID=2 AND THREAD# = LOCAL.THREAD#);
I queried above command and I found some files are missed in standby.
select status, type, database_mode, recovery_mode,protection_mode, srl, synchronization_status,synchronized from V$ARCHIVE_DEST_STATUS where dest_id=2;
STATUS TYPE DATABASE_MODE RECOVERY_MODE PROTECTION_MODE SRL SYNCHRONIZATION_STATUS SYN
VALID PHYSICAL MOUNTED-STANDBY MANAGED MAXIMUM PERFORMANCE NO CHECK CONFIGURATION NO
Anyone can tell me how to apply those missed archive log files.
Thanks in advacneDeccan Charger wrote:
I got below error.
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION
ERROR at line 1:
ORA-01153: an incompatible media recovery is activeYou need to essentially do the following.
1) Stop managed recovery on the standby.
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;2) Resolve the archive log gap - if you have configured FAL_SERVER and FAL_CLIENT Oracle should do this when you follow step 3 below, as you've manually copied the missed logs you should be OK
3) restart managed recovery using the command shown above.
You can monitor archive log catchup using the alert.log or your original query.
Niall Litchfield
http://www.orawin.info/
Edited by: Niall Litchfield on May 4, 2010 2:29 PM
missed tag -
Create multiple standby databases of primary database
Hi,
I have to create 2 standby databases of a single primary database,
where can i get the stpe for the same?
Thanksuser10745179 wrote:
What about FAL_CLIENT parameters in primary?
how to set the values of the above parameter in priamry for second standby database.?
Thanks,In your case do need setting FAL_CLIENT/SERVER in primary database,set these parameter correctly in your standby database.Refer below note
*FAL_SERVER And FAL_CLIENT Settings For Cascaded Standby [ID 358767.1]* -
Hello all,
I have one query regarding Gap detection & resolution.
1) On a 10.2.0.4 DB with physical standby, gap detection and resolution happened using automatic gap resolution without setting FAL_server and FAL_Client on the standby. So I would like to know why should one set the said parameters?
Thanks and regardsWell, please refer to below link
http://docs.oracle.com/cd/B19306_01/server.102/b14239/log_transport.htm#i1268281
it's says that automatic gap resolution doesn't require any setting but primary should be available. For FAL_SERVER, you can specify name for other standby by , oracle stream also from where you can get the archive log too, in case primary not available for some reason.
Thanks
Yogesh
http://orasteps.wordpress.com/ -
Primary and standby init file (switchove/failover)
I have created standby database, its working fine, and logs are copying and being applied. I have successfully opened standby database in read only mode.
Now I want to perform switchover and failover, please check parameters in init file that I have added.
Primary database init file :
*.control_files='D:\oracle\product\10.2.0/oradata/primary/\control01.ctl','D:\oracle\product\10.2.0/oradata/primary/\control02.ctl','D:\oracle\product\10.2.0/oradata/primary/\control03.ctl'
*.db_name='primary'
*.db_unique_name='PRIMARY'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=primaryXDB)'
*.log_archive_dest_1='location=D:\oracle\product\10.2.0\oradata\archive'
*.log_archive_dest_state_1=ENABLE
*.log_archive_dest_state_2=ENABLE
*.log_archive_dest_2='SERVICE=standby LGWR ASYNC'
*.log_archive_format='arc_%s_%t_%r.arc'
*.fal_client='PRIMARY'
*.fal_server='STANDBY'
standby database init file :
*.control_files='D:\oracle\product\10.2.0/oradata/primary/STANDBY_CONTROL.CTL'
*.db_name='primary'
*.db_unique_name='STANDBY'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=primaryXDB)'
*.log_archive_dest_1='location=D:\oracle\product\10.2.0\oradata\archive'
*.log_archive_format='arc_%s_%t_%r.arc'
*.log_archive_dest_state_2=ENABLE
*.fal_server='PRIMARY'
*.fal_client='STANDBY'
*.standby_file_management=auto
Please let me know if I need to add/modify any parameter to perform switchover & failover operations.
Regards.Have a look on the below links:
http://www.orafaq.com/wiki/DataGuard_implementation_for_Oracle_10gR2_
http://emrebaransel.blogspot.com/2008/08/dataguard-switchover-guide-physical09.html_ -
Steps for Data Guard with one primary and 2 standby
Hi,
Database :10.2.0.4, 11.2.0.1
Os: Windows , Unix
A ----------------> Primary database
B ----------------> Standby Database 1
C ----------------> Standby Database 2
I want to configure *2 standby* databases for single primary database.
Lets take, A ,B and C are my machines.My data guard configuration will be like,*archive logs will be moving* from A to B and A to C.
If i do any switchover in between A and B , now B is primary and remaining A and C are standby databases.At this stage also , archive logs should move from B to A and B to C. Also, same should happen from C to A and C to B,If i do switchover in between B and C.If everything is fine , then i will do switchback to main Primary database(A).
How do i have to mention PFILE in all machines ,the parameters like
LOG_ARCHIVE_DEST_1=LOCATION=<PATH> -- LOCAL ARCHIVE PATH
LOG_ARCHIVE_DEST_2=SERVICE=
LOG_ARCHIVE_DEST_3=SERVICE=
FAL_SERVER=
FAL_CLIENT=
STANDBY_FILE_MANAGEMENT=
In my tnsnames.ora , primary,standby1 and standby2 are my service entries and these are same in all of my machines.
Please suggest me , how do i can configure my pfiles in all machines ?.
Thanks,
SunandNot yet, but now you have me interested.
Please consider Flashback.
I still have to test but here's my take:
PRIMARY SETTINGS
*.FAL_SERVER=STANDBY
*.FAL_CLIENT=PRIMARY
*.STANDBY_FILE_MANAGEMENT=AUTO
*.DB_UNIQUE_NAME=PRIMARY
*.LOG_FILE_NAME_CONVERT='STANDBY','PRIMARY'
*.log_archive_dest_1='LOCATION=USE_DB_RECOVERY_FILE_DEST VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=PRIMARY'
*.log_archive_dest_2='SERVICE=STANDBY LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=STANDBY'
*.log_archive_dest_3='SERVICE=STANDBY2 LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=STANDBY2'
*.LOG_ARCHIVE_DEST_STATE_1=ENABLE
*.LOG_ARCHIVE_DEST_STATE_2=ENABLE
*.LOG_ARCHIVE_DEST_STATE_3=ENABLE
*.LOG_ARCHIVE_MAX_PROCESSES=30
STANDBY 1 SETTINGS
*.FAL_SERVER=PRIMARY
*.FAL_CLIENT=STANDBY
*.STANDBY_FILE_MANAGEMENT=AUTO
*.DB_UNIQUE_NAME=STANDBY
*.LOG_FILE_NAME_CONVERT='PRIMARY','STANDBY'
*.log_archive_dest_1=LOCATION=USE_DB_RECOVERY_FILE_DEST VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=STANDBY'
*.log_archive_dest_2='SERVICE=PRIMARY LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=PRIMARY'
*.log_archive_dest_3='SERVICE=STANDBY2 LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=STANDBY2'
*.LOG_ARCHIVE_DEST_STATE_1=ENABLE
*.LOG_ARCHIVE_DEST_STATE_2=DEFER
*.LOG_ARCHIVE_DEST_STATE_3=DEFER
*.LOG_ARCHIVE_MAX_PROCESSES=30
STANDBY2 SETTINGS
*.FAL_SERVER=PRIMARY
*.FAL_CLIENT=STANDBY2
*.STANDBY_FILE_MANAGEMENT=AUTO
*.DB_UNIQUE_NAME=STANDBY2
*.LOG_FILE_NAME_CONVERT='PRIMARY','STANDBY2'
*.log_archive_dest_1=LOCATION=USE_DB_RECOVERY_FILE_DEST VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=STANDBY2'
*.log_archive_dest_2='SERVICE=STANDBY LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=STANDBY'
*.log_archive_dest_3='SERVICE=PRIMARY LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=PRIMARY'
*.LOG_ARCHIVE_DEST_STATE_1=ENABLE
*.LOG_ARCHIVE_DEST_STATE_2=DEFER
*.LOG_ARCHIVE_DEST_STATE_3=DEFER
*.LOG_ARCHIVE_MAX_PROCESSES=30
Edited by: mseberg on Nov 29, 2010 9:39 AM
The first test slapped me. Looking at 409013.1 Cascaded Standby Databases
Edited by: mseberg on Nov 29, 2010 12:49 PM -
Data Guard ora-00314 and ora-00312
Good afternoon. Please, I have configured a data guard on the same server and am sure the files are well configured as
*.db_file_name_convert='C:\Oracle\product\10.2.0\oradata\test2','C:\Oracle\product\10.2.0\oradata\test1'
log_file_name_convert='C:\Oracle\product\10.2.0\oradata\test2','C:\Oracle\product\10.2.0\oradata\test1'
ThanksThe Primary database was OK before I start the Standby database. I've tried many times but failed to open the Primary database after I successfuly created and opened the Standby database. Did the Standby database crash the redo log of Primary? Why?
Error shown when I want to open the Primary database:
ORA-00314: log 2 of thread 1, expected sequence# 11 doesn't match 0
ORA-00312: online log 2 thread 1: '/u01/oradata/DB01/redo_log02.dbf'Part of my initDB01.ora
DB_NAME=DB01
DB_UNIQUE_NAME=DB01
LOG_ARCHIVE_CONFIG='DG_CONFIG=(DB01,DB02)'
LOG_ARCHIVE_DEST_1=
'LOCATION=/u01/oradata/DB01/arc/ MANDATORY
VALID_FOR=(ALL_LOGFILES,ALL_ROLES)
DB_UNIQUE_NAME=DB01'
LOG_ARCHIVE_DEST_2=
'SERVICE=DB02
VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)
DB_UNIQUE_NAME=DB02'
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
LOG_ARCHIVE_MAX_PROCESSES=30
FAL_SERVER=DB02
FAL_CLIENT=DB01
DB_FILE_NAME_CONVERT='/u01/oradata/DB02/','/u01/oradata/DB01/'
LOG_FILE_NAME_CONVERT='/u01/oradata/DB02/arc/','/u01/oradata/DB01/arc/'
STANDBY_FILE_MANAGEMENT=AUTO
Part of my initDB02.ora
CONTROL_FILES='/opt/oracle/oradata/DB02/control_primary.ctl'
DB_NAME=DB01
DB_UNIQUE_NAME=DB02
LOG_ARCHIVE_CONFIG='DG_CONFIG=(DB01,DB02)'
LOG_ARCHIVE_DEST_1=
'LOCATION=/u01/oradata/DB02/arc/ MANDATORY
VALID_FOR=(ALL_LOGFILES,ALL_ROLES)
DB_UNIQUE_NAME=DB02'
LOG_ARCHIVE_DEST_2=
'SERVICE=DB01
VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)
DB_UNIQUE_NAME=DB01'
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
STANDBY_FILE_MANAGEMENT=AUTO
FAL_SERVER=DB01
FAL_CLIENT=DB02
DB_FILE_NAME_CONVERT='/u01/oradata/DB01/','/u01/oradata/DB02/'
LOG_FILE_NAME_CONVERT='/u01/oradata/DB01/arc/','/u01/oradata/DB02/arc/' -
Logical standby stuck at initializing SQL apply only coordinator process up
Hi
OS: solaris 5.10
Hardware: sun sparc
Oracle database: 11.2.0.1.0
Primary database name: asadmin
Standby database name: test
I had been trying to convert a physical standby to logical standby database. Both the primary and standby reside on the same machine.
The physical standby was created with a hot backup of primary.
I had been following document id 278371.1 to convert the physical to logical standby and used the following steps:
Relevant init parameters on primary:
*.db_name='asadmin'
*.db_unique_name='asadmin'
*.log_archive_config='dg_config=(asadmin,test)'
*.log_archive_dest_1='location=/u01/asadmin/archive valid_for=(all_logfiles,all_roles) db_unique_name=asadmin'
*.log_archive_dest_2='SERVICE=test async valid_for=(online_logfiles,primary_role) db_unique_name=test'
*.log_archive_dest_state_1='enable'
*.log_archive_dest_state_2='enable'
*.fal_client='asadmin'
*.fal_server='test'
*.remote_login_passwordfile='EXCLUSIVE'
Relevant init parameters on standby database:
*.db_name='test' -- Was asadmin before I renamed the DB during conversion to logical standby
*.db_unique_name='test'
*.log_archive_dest_1='location=/u01/test/archive valid_for=(all_logfiles,all_roles) db_unique_name=test'
*.log_archive_dest_2='service=asadmin async valid_for=(online_logfiles,primary_role) db_unique_name=asadmin'
*.log_archive_dest_state_1=enable
*.log_archive_dest_state_2=defer
*.remote_login_passwordfile='EXCLUSIVE'*.fal_server=test
*.fal_client=asadmin
Steps on primary:
1) alter system set log_archive_dest_state_2=defer;
2) shutdown immediate;
3) Made sure that the physical standby has applied all of the redo sent to it following the shutdown.
4) startup mount;
5) ALTER DATABASE BACKUP CONTROLFILE to '/home/oracle/control01.ctl';
6) ALTER SYSTEM ENABLE RESTRICTED SESSION;
7) ALTER DATABASE OPEN;
8) Verified that the supplemental logging is on.
9) ALTER SYSTEM ARCHIVE LOG CURRENT;
10) Checked for the checkpoint change no. at this point which is 72403818 and is present in archive log file 1_62_775102253.dbf
11) EXECUTE DBMS_LOGSTDBY.BUILD;
12) ALTER SYSTEM ARCHIVE LOG CURRENT;
13) Checked for the archive log containing dictionary build which is 1_64_775102253.dbf
14) ALTER SYSTEM DISABLE RESTRICTED SESSION;
Details of archive logs and related checkpoint change nos:
NAME FIRST_CHANGE# NEXT_CHANGE#
/u01/asadmin/archive/1_61_775102253.dbf 72402901 72403817
/u01/asadmin/archive/1_62_775102253.dbf 72403817 72404069
/u01/asadmin/archive/1_63_775102253.dbf 72404069 72404211
/u01/asadmin/archive/1_64_775102253.dbf 72404211 72405700
Steps on standby:
1) shutdown immediate;
2) Copy the archivelog file 61(was created at primary after apply stopped at standby), 62(contains checkpoint no. 72403818), 63 and 64(contains dictionary build). Copy the backup controlfile from step 5 above to the controlfile location in standby init.
3) startup mount;
4) Rename all datafiles and redo log files (including standby redo log files) to the correct path on standby.
5) alter database recover automatic from '/u01/test/archive' until change 72405700 using backup controlfile; -- This completed error-free
6) alter database guard all; -- this completed error free
7) alter database open resetlogs; -- this completed error free.
8) nid target=sys/oracle12 dbname=test
9) Changed the db_name in init file to new name test.
10) Added a tempfile to temp tablespaces.
11) ALTER DATABASE REGISTER LOGICAL LOGFILE '/u01/test/archive/1_61_775102253.dbf'; -- ORA-16225: Missing LogMiner session name for Streams
12) ALTER DATABASE START LOGICAL STANDBY APPLY INITIAL 72405700; -- This completed error free.
Also enabled the log_archive_dest_state_2 on primary.
After this output from some views:
SQL> SELECT SESSION_ID, STATE FROM V$LOGSTDBY_STATE;
SESSION_ID STATE
1 INITIALIZING
SQL> SELECT SID, SERIAL#, SPID, TYPE FROM V$LOGSTDBY_PROCESS;
SID SERIAL# SPID TYPE
587 22 15476 COORDINATOR
SELECT PERCENT_DONE, COMMAND
FROM V$LOGMNR_DICTIONARY_LOAD
WHERE SESSION_ID = (SELECT SESSION_ID FROM V$LOGSTDBY_STATE);
PERCENT_DONE
COMMAND
0
SQL> SELECT TYPE, HIGH_SCN, STATUS FROM V$LOGSTDBY;
TYPE HIGH_SCN STATUS
COORDINATOR ORA-16111: log mining and apply setting up
SQL> SELECT APPLIED_SCN, NEWEST_SCN FROM DBA_LOGSTDBY_PROGRESS;
APPLIED_SCN NEWEST_SCN
72405700 72411501
SELECT THREAD#, SEQUENCE#, FILE_NAME FROM DBA_LOGSTDBY_LOG L
WHERE NEXT_CHANGE# NOT IN
(SELECT FIRST_CHANGE# FROM DBA_LOGSTDBY_LOG WHERE L.THREAD# = THREAD#)
ORDER BY THREAD#,SEQUENCE#;
no rows selected
SQL> SELECT EVENT_TIME, STATUS, EVENT
FROM DBA_LOGSTDBY_EVENTS
ORDER BY EVENT_TIMESTAMP, COMMIT_SCN; 2 3
EVENT_TIME STATUS EVENT
14-FEB-12 02:00:50 ORA-16111: log mining and apply setting up
14-FEB-12 02:00:50 Apply LWM 72405699, HWM 72405699, SCN 72405699
14-FEB-12 02:20:11 ORA-16128: User initiated stop apply successfully
completed
14-FEB-12 02:20:39 ORA-16111: log mining and apply setting up
14-FEB-12 02:20:39 Apply LWM 72405699, HWM 72405699, SCN 72405699
14-FEB-12 02:54:15 ORA-16128: User initiated stop apply successfully
completed
14-FEB-12 02:57:38 ORA-16111: log mining and apply setting up
EVENT_TIME STATUS EVENT
14-FEB-12 02:57:38 Apply LWM 72405699, HWM 72405699, SCN 72405699
14-FEB-12 03:01:36 ORA-16128: User initiated stop apply successfully
completed
14-FEB-12 03:13:44 ORA-16111: log mining and apply setting up
14-FEB-12 03:13:44 Apply LWM 72405699, HWM 72405699, SCN 72405699
14-FEB-12 04:32:23 ORA-16128: User initiated stop apply successfully
completed
14-FEB-12 04:34:17 ORA-16111: log mining and apply setting up
14-FEB-12 04:34:17 Apply LWM 72405699, HWM 72405699, SCN 72405699
EVENT_TIME STATUS EVENT
14-FEB-12 04:36:16 ORA-16128: User initiated stop apply successfully
completed
14-FEB-12 04:36:21 ORA-16111: log mining and apply setting up
14-FEB-12 04:36:21 Apply LWM 72405699, HWM 72405699, SCN 72405699
14-FEB-12 05:15:22 ORA-16128: User initiated stop apply successfully
completed
14-FEB-12 05:15:29 ORA-16111: log mining and apply setting up
14-FEB-12 05:15:29 Apply LWM 72405699, HWM 72405699, SCN 72405699
I also greped for lsp and lcr processes and found that lsp is up but do not see any lcr.
The logs are getting transported to the archive destination on standby whenever they are archived on primary but are not getting applied to standby.
Also in case the standby is down while a log is generated on primary it is not automatically transported to standby once the standby is up, means gap resolution is also not working.
I see the following in alert log every time I try to restart the log apply, everything seems to be stuck at initialization.
ALTER DATABASE START LOGICAL STANDBY APPLY (test)
with optional part
IMMEDIATE
Attempt to start background Logical Standby process
Tue Feb 14 05:15:28 2012
LSP0 started with pid=28, OS id=23391
Completed: alter database start logical standby apply immediate
LOGMINER: Parameters summary for session# = 1
LOGMINER: Number of processes = 3, Transaction Chunk Size = 201
LOGMINER: Memory Size = 30M, Checkpoint interval = 150M
LOGMINER: SpillScn 0, ResetLogScn 0
-- NOTHING AFTER THISHello;
I noticed some of your parameters seem to be wrong.
fal_client - This is Obsolete in 11.2
You have db_name='test' on the Standby, it should be 'asadmin'
fal_server=test is set like this on the standby, it should be 'asadmin'
I might consider changing VALID_FOR to this :
VALID_FOR=(ONLINE_LOGFILES,ALL_ROLES)Would review 4.2 Step-by-Step Instructions for Creating a Logical Standby Database of Oracle Document E10700-02
Document 278371.1 is showing its age in my humble opinion.
-----Wait on this until you fix your parameters----------------------
Try restarting the SQL Apply
ALTER DATABASE START LOGICAL STANDBY APPLY IMMEDIATEI don't see the parameter MAX_SERVERS, try setting it to 8 times the number of cores.
Use these statements to trouble shoot :
SELECT NAME, VALUE, UNIT FROM V$DATAGUARD_STATS;
SELECT NAME, VALUE FROM V$LOGSTDBY_STATS WHERE NAME LIKE ;TRANSACTIONS%';
SELECT COUNT(1) AS IDLE_PREPARERS FROM V$LOGSTDBY_PROCESS WHERE
TYPE = 'PREPERER' AND STATUS_CODE = 16166;Best Regards
mseberg
Edited by: mseberg on Feb 14, 2012 7:37 AM -
Gap in logs are too far to recover. Need to start over I think.
Hello,
I have a dataguard setup and due to several circumstances the connection was lost to the standby and the archivelogs are gone for as far back as needed.
I want to double check that this is the best method to get synched up again. On primary I am running rman backups every night. Here is my config....
Oracle 10.2.0.5 (64 bit)
Red Hat 5 enterprise 64 bit.
PRIMARY
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 1 DAYS;
CONFIGURE BACKUP OPTIMIZATION ON;
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COMPRESSED BACKUPSET PARALLELISM 3;
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1;
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u04/flash_recovery_area/snapcf_bcso.f';
Standby
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 28 DAYS;
CONFIGURE BACKUP OPTIMIZATION ON;
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COMPRESSED BACKUPSET PARALLELISM 4;
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1;
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u04/flash_recovery_area/snapcf_bcso.f';
Backup script that is only run on primary. No backup on standby at the moment.
run{
crosscheck archivelog all;
delete expired archivelog all;
backup database plus archivelog not backed up delete all input;
delete noprompt obsolete;
#Fix for bug 964522.1
delete force archivelog until time 'trunc(sysdate-1)' backed up 1 times to device type disk;
So can I just copy over my flash_recovery_area to the standby FRA, restore database, recover database? Then set my log_archive_dest_2 on the primary and ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT; on the standby?
I did not set this up initially and I see a couple issues I need to address on the standby
db_recovery_file_dest string /u01/app/oracle/flash_recovery_area
standby_archive_dest string /u04/flash_recovery_area
Here is primary
db_recovery_file_dest string /u04/flash_recovery_area
What I'm not sure of is which one of these I need to switch on the standby or in RMAN on the standby. RMAN is going to look for the backup in the location set by db_recovery_file_dest on the standby for the files to recover. I don't have room on that drive so can I just simply change on standby db_recovery_file_dest = '/u04/flash_recovery_area' for the recovery then set it back when it's finished?
ThanksHello again;
Monday is meeting day here.
PRIMARY
db_name='bcso'
db_unique_name='bcso'
log_archive_config='DG_CONFIG=(bcso,stdby)'
log_archive_dest_1='LOCATION=USE_DB_RECOVERY_FILE_DEST VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=bcso'
log_archive_dest_2='SERVICE=BCSTDBY_40 LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=stdby'
FAL_SERVER=bcso
FAL_CLIENT=stdby
STANDBY
db_name='bcso'
db_unique_name='stdby'
log_archive_config='DG_CONFIG=(bcso,stdby)'
log_archive_dest_1='LOCATION=USE_DB_RECOVERY_FILE_DEST VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=stdby'
log_archive_dest_2='SERVICE=bcso LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=bcso'
FAL_SERVER=stdby
FAL_CLIENT=bcso
I just want to be clear that in *.log_archive_dest_2='SERVICE=BCSTDBY_40 I put the tnsnames.ora entry of the server I want to connect to not the instance name?Correct. The is the TNSNAMES.ORA entry.
Important
The way I show it you need to set DB_RECOVERY_FILE_DEST too.
Example
db_recovery_file_dest='/u04/flash_recovery_area'
If the standby site's FRA is different you need to account for that.
Once you get it going keep this query ( I would run once a day )
http://www.visi.com/~mseberg/data_guard/monitor_data_guard_transport.html
Best Regards
mseberg -
Hi, I have both primary and standby database in ASM and I need to recover the standby database as it's falling behind for too long. The steps I did are:
1. backup full database on primary
2. create a standby controlfile and copy to /tmp on the standby
3. on the standby, RMAN>restore standby controlfile from '/tmp/std.ctl';
4. RMAN>restore database;
5. SQL>recover managed standby database disconnect;
However, the recovery always shuts down and I get the error:
ORA-01110: data file 1: '+W08_DATA_DG/w08p/datafile/system.295.662256331'
What's wrong with my steps?
Your suggestion is greatly appreciated!the directory structures are the same. The standby was working before. It's just falling behind so I want to restore it from the new backup. Here is the init.ora
*.audit_file_dest='/opt/app/oracle/admin/W08P/adump'
*.background_dump_dest='/opt/app/oracle/admin/W08P/bdump'
*.cluster_database_instances=2
*.cluster_database=false
*.compatible='10.2.0.3.0'
*.control_files='+W08_DATA_DG/w08p/control01.ctl','+W08_RECOVERY_DG/w08p/control02.ctl','+W08_DATA_DG/w08p/control03.ctl'
*.core_dump_dest='/opt/app/oracle/admin/W08P/cdump'
*.db_block_size=8192
*.db_create_file_dest='+W08_DATA_DG'
*.db_domain=''
*.db_file_multiblock_read_count=16
*.db_name='W08P'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=W08PXDB)'
*.event='10298 trace name context forever, level 32'
*.job_queue_processes=10
*.log_archive_dest_1='LOCATION=+W08_RECOVERY_DG/W08P/'
*.log_archive_format='%t_%s_%r.arc'
*.log_archive_max_processes=6
*.open_cursors=1000
*.optimizer_index_caching=70
*.optimizer_index_cost_adj=30
*.pga_aggregate_target=1459617792
*.processes=300
*.remote_login_passwordfile='exclusive'
*.sessions=1000
*.sga_target=1610612736
*.undo_management='AUTO'
*.undo_retention=26000
W08P.undo_tablespace='UNDOTBS1'
*.user_dump_dest='/opt/app/oracle/admin/W08P/udump'
standby_archive_dest='LOCATION=+W08_RECOVERY_DG/W08P'
CONTROL_FILE_RECORD_KEEP_TIME=0
standby_file_management=auto
fal_server=w08p
fal_client=w08p_stby
control_file_record_keep_time=90
~ -
URGENT:Diagnose The Steps for Creating a Standby Database
Why Following Steps Can Not Succeed? What are the problems?
The Steps of Creating a Physical Standby Database
SQL>alter system set db_recovery_file_dest_size=2000m scope=both;
SQL>alter system set db_recovery_file_dest='C:\oracle\product\10.2.0/flash_recovery_area' scope=both;
SQL> shutdown immediate
SQL> startup mount
SQL> alter database archivelog;
SQL>alter system set db_flashback_retention_target=120 scope=both;
SQL> alter database flashback on;
SQL> alter database force logging;
#The Primary Database Pfile after being edited
# Copyright (c) 1991, 2001, 2002 by Oracle Corporation
# SGA Memory
sga_target=370147328
# Job Queues
job_queue_processes=10
# Shared Server
dispatchers="(PROTOCOL=TCP) (SERVICE=orcl10XDB)"
# Miscellaneous
compatible=10.2.0.1.0
# Security and Auditing
audit_file_dest=C:\oracle\product\10.2.0/admin/orcl10/adump
remote_login_passwordfile=EXCLUSIVE
# Sort, Hash Joins, Bitmap Indexes
pga_aggregate_target=122683392
# Database Identification
db_domain=""
db_name=orcl10
# File Configuration
control_files=("C:\oracle\product\10.2.0\oradata\orcl10\control01.ctl", "C:\oracle\product\10.2.0\oradata\orcl10\control02.ctl", "C:\oracle\product\10.2.0\oradata\orcl10\control03.ctl")
db_recovery_file_dest=C:\oracle\product\10.2.0/flash_recovery_area
db_recovery_file_dest_size=2147483648
# Cursors and Library Cache
open_cursors=300
# System Managed Undo and Rollback Segments
undo_management=AUTO
undo_tablespace=UNDOTBS1
# Diagnostics and Statistics
background_dump_dest=C:\oracle\product\10.2.0/admin/orcl10/bdump
core_dump_dest=C:\oracle\product\10.2.0/admin/orcl10/cdump
user_dump_dest=C:\oracle\product\10.2.0/admin/orcl10/udump
# Processes and Sessions
processes=150
# Cache and I/O
db_block_size=8192
db_file_multiblock_read_count=16
DB_NAME=orcl10
DB_UNIQUE_NAME=orcl10
LOG_ARCHIVE_CONFIG='DG_CONFIG=(orcl10,stdby4)'
LOG_ARCHIVE_DEST_1=
'LOCATION=/arch1/orcl10/
VALID_FOR=(ALL_LOGFILES,ALL_ROLES)
DB_UNIQUE_NAME=orcl10'
LOG_ARCHIVE_DEST_2=
'SERVICE=stdby4 LGWR ASYNC
VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)
DB_UNIQUE_NAME=stdby4'
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE
LOG_ARCHIVE_FORMAT=%t_%s_%r.arc
LOG_ARCHIVE_MAX_PROCESSES=30
FAL_SERVER=stdby4
FAL_CLIENT=orcl10
DB_FILE_NAME_CONVERT='stdby4','orcl10'
LOG_FILE_NAME_CONVERT=
'/arch1/stdby4/','/arch1/orcl10/','/arch2/stdby4/','/arch2/orcl10/'
STANDBY_FILE_MANAGEMENT=AUTO
SQL> create spfile from pfile;
RMAN> connect target
RMAN> backup database;
###TheBackupHandle==C:\ORACLE\PRODUCT\10.2.0\FLASH_RECOVERY_AREA\ORCL10\BACKUPSET\2007_11_06\O1_MF_NCSNF_TAG20071106T064915_3LZ7LRN8_.BKP
RMAN> backup datafile1,2,3,4,5;
C:\DocumentsandSettings\Administrator>mkdir C:\ORACLE\PRODUCT\10.2.0\ORADATA\temp\stdby4
SQL> alter database create standby controlfile as '/temp/stdby4.ctl';
SQL> create pfile='/temp/initstdby4.ora' from spfile;
#Pfile Edited for The Physical Standby Database
# Copyright (c) 1991, 2001, 2002 by Oracle Corporation
# SGA Memory
sga_target=370147328
# Job Queues
job_queue_processes=10
# Shared Server
dispatchers="(PROTOCOL=TCP) (SERVICE=stdby4XDB)"
# Miscellaneous
compatible=10.2.0.1.0
# Security and Auditing
audit_file_dest=C:\oracle\product\10.2.0/admin/stdby4/adump
remote_login_passwordfile=EXCLUSIVE
# Sort, Hash Joins, Bitmap Indexes
pga_aggregate_target=122683392
# Database Identification
db_domain=""
db_name=orcl9
# File Configuration
control_files=("C:\oracle\product\10.2.0\oradata\stdby4\control01.ctl", "C:\oracle\product\10.2.0\oradata\stdby4\control02.ctl", "C:\oracle\product\10.2.0\oradata\stdby4\control03.ctl")
db_recovery_file_dest=C:\oracle\product\10.2.0/stdby4/flash_recovery_area
db_recovery_file_dest_size=2147483648
# Cursors and Library Cache
open_cursors=300
# System Managed Undo and Rollback Segments
undo_management=AUTO
undo_tablespace=UNDOTBS1
# Diagnostics and Statistics
background_dump_dest=C:\oracle\product\10.2.0/admin/stdby4/bdump
core_dump_dest=C:\oracle\product\10.2.0/admin/stdby4/cdump
user_dump_dest=C:\oracle\product\10.2.0/admin/stdby4/udump
# Processes and Sessions
processes=150
# Cache and I/O
db_block_size=8192
db_file_multiblock_read_count=16
DB_UNIQUE_NAME=stdby4
LOG_ARCHIVE_CONFIG='DG_CONFIG=(orcl10,stdby4)'
DB_FILE_NAME_CONVERT='orcl10','stdby4'
LOG_FILE_NAME_CONVERT=
'/arch1/orcl10/','/arch1/stdby4/','/arch2/orcl10/','/arch2/stdby4/'
LOG_ARCHIVE_FORMAT=log%t_%s_%r.arc
LOG_ARCHIVE_DEST_1=
'LOCATION=/arch1/stdby4/
VALID_FOR=(ALL_LOGFILES,ALL_ROLES)
DB_UNIQUE_NAME=stdby4'
LOG_ARCHIVE_DEST_2=
'SERVICE=orcl10 LGWR ASYNC
VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)
DB_UNIQUE_NAME=orcl10'
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE
STANDBY_FILE_MANAGEMENT=AUTO
FAL_SERVER=orcl10
FAL_CLIENT=stdby4
C:\Documents and Settings\Administrator>oradim -new -sid stdby4 -startmode manual
Create Listener and Network Service Name for Standby Database.Stop and start listener(not need)
SQL>create spfile from pfile='/temp/initstdby4.ora';
C:\Documents and Settings\Administrator>set oracle_sid=stdby4
SQL> startup mount;
ORA-01078: failure in processing system parameters
LRM-00109: ???????????????? 'C:\ORACLE\PRODUCT\10.2.0\DB_10\DATABASE\INITSTDBY4.ORA'
Message was edited by:
frank.qian
Message was edited by:
frank.qianyou have now two different pfiles: one in c:\temp\initstdby4.ora. and %ORACLE_HOME%\database\initstdby4.ora.
You are using the latter, as you didn't specify pfile= in your startup mount.
Also, if you are using a spfile, the only line in a pfile should be: spfile=....
In your pfile you are mixing up Unix like file locations with \ and Windows file locations with /
Could you please read the docs
more closely
more closely
more closely
and work
more carefully
more carefully
more carefully
It is very simple, but you must work carefully.
Sybrand Bakker
Senior Oracle DBA
Maybe you are looking for
-
Can't restore files from Time machine backup?
I kinda successfully restored my files from Time Machine after a clean re-install of Snow Leopard (Time Machine thought they were new files, though, so backed up the 26 GB... waste of space), but now I'm trying to restore the files of the other user
-
Installation of solaris 10 on 2 similar sparcs
Hi. I have 2 t5120 sun enterprise systems. One is complete installed and RAID -1 was configured using hardware raid- raidctl on both systems. I wanted to know if there is an easy way I can just take out the second disk (disk in right side slot when I
-
I'm fairly new to Java. Ive programmed quite a bit in the past (Pascal, C and C#.NET) - Im at university and I would like to know if there are any free good IDE's. I'd like one with some Debugging tools if possible. I'm currently using Textpad, as it
-
To consume web service in ABAP is it required that server should be XI.
Hi , I am trying to connect to a webservice from netweaver 7.0 systemand it gives an error " Not configured as integration engine". Is it required to have integration engine to consume web service. Sanjay
-
I reinstalled ps CS5 and have lost my patch tool. how do I get it back
please help me with this issue. Can't find my patch tool anywhere where it should be