ORACLE11G RAC 环境搭建物理 DATA GUARD (不用duplicate)

整体思路 :先把主库的口令文件,参数文件,控制文件(用 ALTER DATABASE CREATE STANDBY CONTROLFILE AS '/app/temp/standby.ctl'; 命令创建),传给standby,然后再把主库的全备传给standby,之后再在standby的rman里restore,之后打开MRP应用进程来应用日志(可以理解为recover的过程),如果要是10g的话,到这里已经完成了,但是11g可以在read only 打开的状态下来应用日志,重演变化。所以只要关掉MRP进程,再alter  database open read only ,  最后再打开MRP进程即可,用备库来分担主库读的压力。
下面展示详细步骤 
前提要保证主库和standby库互相能ping通。各自的监听是开启的。

一. 检查数据库要处于归档模式.   如果不是要修改成归档模式,已经是归档模式,可以跳过这步骤。
SQL> archive log list;
Database log mode              No Archive Mode
Automatic archival             Disabled
Archive destination            USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence     11
Current log sequence           12
SQL>

 1> 修改数据库为归档模式(RAC 环境)
 1. 停止数据库
   srvctl stop database -d racdb
 2. 第一个实例启动到mount 状态.
    srvctl start instance -d racdb -i racdb1
   
    shutdown immediate;
    startup mount;

SQL> archive log list
Database log mode              No Archive Mode
Automatic archival             Disabled
Archive destination            USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence     11
Current log sequence           12
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount
ORACLE instance started.

Total System Global Area 1224736768 bytes
Fixed Size                  2072352 bytes
Variable Size             285212896 bytes
Database Buffers          922746880 bytes
Redo Buffers               14704640 bytes
Database mounted.
SQL> alter database archivelog;

Database altered.

SQL> alter database open;

Database altered.
  
  3. 启动第二个实例
  [oracle@rac1 ~]$ srvctl start instance -d racdb -i racdb2           
    [oracle@rac1 ~]$ srvctl start service -d racdb -s testdb
    [oracle@rac1 ~]$ crs_stat -t


二: 检查是否为 force logging .

1.
SQL> select inst_id , force_logging from gv$database;

   INST_ID FOR
---------- ---
         1 NO
         2 NO

2. 修改数据库为 force logging
 
SQL> alter database force logging;

Database altered.
 
  注意:只需要在一个instance 执行即可.


三:再主库操作,
  1> rman full backup
 
  RMAN> backup full database  tag 'dbfull' format '/app/temp/dbfull_%u_%s_%p'; 
  
  Starting backup at 30-JUN-08
  allocated channel: ORA_DISK_1
  channel ORA_DISK_1: sid=519 instance=racdb1 devtype=DISK
  channel ORA_DISK_1: starting full datafile backupset
  channel ORA_DISK_1: specifying datafile(s) in backupset
  input datafile fno=00003 name=+DG1/racdb/datafile/sysaux.257.657295195
  input datafile fno=00004 name=+DG1/racdb/datafile/users.259.657295199
  input datafile fno=00001 name=+DG1/racdb/datafile/system.256.657295195
  input datafile fno=00002 name=+DG1/racdb/datafile/undotbs1.258.657295197
  input datafile fno=00005 name=+DG1/racdb/datafile/undotbs2.264.657295475
  input datafile fno=00006 name=+DG1/racdb/datafile/tbs_test.268.658242359
  channel ORA_DISK_1: starting piece 1 at 30-JUN-08
  channel ORA_DISK_1: finished piece 1 at 30-JUN-08
  piece handle=/app/temp/dbfull_01jk7rjj_1_1 tag=DBFULL comment=NONE
  channel ORA_DISK_1: backup set complete, elapsed time: 00:00:55
  channel ORA_DISK_1: starting full datafile backupset
  channel ORA_DISK_1: specifying datafile(s) in backupset
  including current control file in backupset
  including current SPFILE in backupset
  channel ORA_DISK_1: starting piece 1 at 30-JUN-08
  channel ORA_DISK_1: finished piece 1 at 30-JUN-08
  piece handle=/app/temp/dbfull_02jk7rla_2_1 tag=DBFULL comment=NONE
  channel ORA_DISK_1: backup set complete, elapsed time: 00:00:15
  Finished backup at 30-JUN-08
   
  2>

-- 修改主库的初始化参数


1.4、设置主库初始化参数
$ sqlplus   /as sysdba
SQL> alter system set LOG_ARCHIVE_CONFIG='DG_CONFIG=(WENDING,PHYSTDBY)' scope=spfile;        ### 启动db接受或发送redo data,包括所有库的db_unique_name,如果设置了多个DG库,如下 JLPROJCT3和JLPROJCT4都是DG库应该:
 alter system set log_archive_config='DG_CONFIG=(JLPROJCT,JLPROJCT3,JLPROJCT4)';)

SQL> alter system set LOG_ARCHIVE_DEST_1='LOCATION=/orahome/arch1/WENDING VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=WENDING' scope=spfile;        (主库归档目的地)

SQL> alter system set LOG_ARCHIVE_DEST_2='SERVICE=db_phystdby  LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=PHYSTDBY' scope=spfile;    (当该库充当主库角色时,设置物理备库redo data的传输目的地)
例如:
  SYS@JLPROJCT ALTER SYSTEM SET LOG_ARCHIVE_DEST_2='SERVICE=JLPROJCT4   
LGWR  SYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=JLPROJCT4';
System altered.

SQL> alter system set LOG_ARCHIVE_MAX_PROCESSES=5 scope=spfile;    (最大ARCn进程数,非必须)

SQL> alter system set LOG_ARCHIVE_DEST_STATE_1=ENABLE scope=spfile;    ( 开启传输日志的服务, 允许redo传输服务传输数据到目的地,默认是enable)

SQL> alter system set LOG_ARCHIVE_DEST_STATE_2=ENABLE scope=spfile;    (同上)

SQL> alter system set REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE scope=spfile;    (exclusive or shared,所有库sys密码要一致,默认是exclusive)

--以下是主库切换为备库,充当备库角色时的一些参数设置,如果不打算做数据库切换就不用设置了
SQL> alter system set FAL_SERVER=db_phystdby scope=spfile;        (配置网络服务名,假如转换为备库角色时,从这里获取丢失的归档文件)

SQL> alter system set FAL_CLIENT=db_wending scope=spfile;        (配置网络服务名,fal_server拷贝丢失的归档文件到这里)

SQL> alter system set DB_FILE_NAME_CONVERT='PHYSTDBY','WENDING' scope=spfile;    (前为切换后的主库路径,后为切换后的备库路径,如果主备库目录结构完全一样,则无需设定)

SQL> alter system set LOG_FILE_NAME_CONVERT='PHYSTDBY','WENDING' scope=spfile;        (同上,这两个名字转换参数是主备库的路径映射关系,可能会是路径全名,看情况而定)

SQL> alter system set STANDBY_FILE_MANAGEMENT=auto scope=spfile;        (auto后当主库的datafiles增删时备库也同样自动操作,且会把日志传送到备库standby_archive_dest参数指定的目录下,确保该目录存在,如果你的存储采用文件系统没有问题,但是如果采用了裸设备,你就必须将该参数设置为manual)

SQL> alter system set STANDBY_ARCHIVE_DEST='LOCATION=/orahome/arch1/WENDING' scope=spfile;    (一般和LOG_ARCHIVE_DEST_1的位置一样,如果备库采用ARCH传输方式,那么主库会把归档日志传到该目录下,但是11g 一般使用redo,所以这个参数正在被大家遗忘)
有了以上参数设置,则无论该库充当主库角色还是备库角色都无需再修改了。
然后重启数据库:



四.  创建备库的参数文件 和控制文件.

SQL> create pfile='/app/oracle/admin/racdb/pfile/standby.pfile' from spfile;

File created.

SQL> ALTER DATABASE CREATE STANDBY CONTROLFILE AS '/app/temp/standby.ctl';                        

Database altered.

把 pfile , ctrontl file  拷贝到备份数据库上相应目录下,参数文件和口令文件在  $ORACLE_HOME/dbs/下(在备份数据库上修改参数文件,去掉rac的参数.)


五.口令文件,可以直接把主库的口令文件传过去进行重命名即可,
也可以在standby 上创建密码文件,但是sys用户的密码必须要和主库的一样。

[oracle@oradb dbs]$ orapwd file=/opt/oracle/product/11.2.0/dbhome_1/dbs/orapwJLPROJCT4   password=manager202  entries=5;


[oracle@oradb pfile]$ sqlplus   / as sysdba

SQL*Plus: Release 10.2.0.3.0 - Production on Tue Jul 1 13:03:12 2008

Copyright (c) 1982, 2006, Oracle.  All Rights Reserved.

Connected to an idle instance.

六:在备库操作

1,启动standby实例。并启动mount状态

SQL> startup nomount             
ORACLE instance started.

Total System Global Area  213909504 bytes
Fixed Size                  1260984 bytes
Variable Size              79692360 bytes
Database Buffers          130023424 bytes
Redo Buffers                2932736 bytes
SQL> alter database mount 

Database altered.

2,rman 进行恢复


[oracle@oradb ~]$ rman target /

Recovery Manager: Release 10.2.0.3.0 - Production on Tue Jul 1 13:03:57 2008

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

connected to target database: RACDB (DBID=654912098, not open)

RMAN> restore database;

Starting restore at 01-JUL-08
Starting implicit crosscheck backup at 01-JUL-08
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=536 devtype=DISK
Crosschecked 2 objects
Finished implicit crosscheck backup at 01-JUL-08

Starting implicit crosscheck copy at 01-JUL-08
using channel ORA_DISK_1
Finished implicit crosscheck copy at 01-JUL-08

searching for all files in the recovery area
cataloging files...
no files cataloged

using channel ORA_DISK_1

channel ORA_DISK_1: starting datafile backupset restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
restoring datafile 00001 to +DG1/racdb/datafile/system.256.657295195
restoring datafile 00002 to +DG1/racdb/datafile/undotbs1.258.657295197
restoring datafile 00003 to +DG1/racdb/datafile/sysaux.257.657295195
restoring datafile 00004 to +DG1/racdb/datafile/users.259.657295199
restoring datafile 00005 to +DG1/racdb/datafile/undotbs2.264.657295475
restoring datafile 00006 to +DG1/racdb/datafile/o1_mf_tbs_test_46mjwd9n_.dbf
channel ORA_DISK_1: reading from backup piece /app/temp/dbfull_01jk7rjj_1_1
channel ORA_DISK_1: restored backup piece 1
piece handle=/app/temp/dbfull_01jk7rjj_1_1 tag=DBFULL
channel ORA_DISK_1: restore complete, elapsed time: 00:01:56
Finished restore at 01-JUL-08


4,打开MRP进程,应用日志,重演变化。这个步骤相当于在recover,在进行这个步骤之前,你alter  database open  read only;会报错:某个文件需要进行介质恢复

SQL>ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION; #归档之后 才应用

alter database recover managed standby database using current logfile disconnect from session;#实时应用日志


七:备用数据库 添加 standby log file          

注意:如果你在主库全备份之前已经添加上了standby  日志组,那么等你在备库restore之后,就有了和主库一样的日志组个数,只是路径变成了在参数文件里设置的路径了,所以你就没必要再添加了。

1,先关掉MRP进程。

SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;

Database altered.

ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 group 5 ('/backup/onlinelog/standby1.log') SIZE 2g;
ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 group 6 ('/backup/onlinelog/standby2.ora') SIZE 2g;
ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 group 7 ('/backup/onlinelog/standby3.ora') SIZE 2g;

ALTER DATABASE ADD STANDBY LOGFILE THREAD 2 group 8 ('/backup/onlinelog/standby4.ora') SIZE 2g;
ALTER DATABASE ADD STANDBY LOGFILE THREAD 2 group 9 ('/backup/onlinelog/standby5.ora') SIZE 2g;
ALTER DATABASE ADD STANDBY LOGFILE THREAD 2 group 10('/backup/onlinelog/standby6.ora') SIZE 2g;

ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 group 11 ('/backup/onlinelog/standby7.log') SIZE 2g;
ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 group 12 ('/backup/onlinelog/standby8.ora') SIZE 2g;
ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 group 13 ('/backup/onlinelog/standby9.ora') SIZE 2g;

ALTER DATABASE ADD STANDBY LOGFILE THREAD 2 group 14 ('/backup/onlinelog/standby10.ora') SIZE 2g;
ALTER DATABASE ADD STANDBY LOGFILE THREAD 2 group 15 ('/backup/onlinelog/standby11.ora') SIZE 2g;
ALTER DATABASE ADD STANDBY LOGFILE THREAD 2 group 16('/backup/onlinelog/standby12.ora') SIZE 2g;

ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 group 17 ('/backup/onlinelog/standby13.log') SIZE 2g;
ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 group 18 ('/backup/onlinelog/standby14.ora') SIZE 2g;
ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 group 19 ('/backup/onlinelog/standby15.ora') SIZE 2g;

ALTER DATABASE ADD STANDBY LOGFILE THREAD 2 group 20 ('/backup/onlinelog/standby16.ora') SIZE 2g;
ALTER DATABASE ADD STANDBY LOGFILE THREAD 2 group 21 ('/backup/onlinelog/standby17.ora') SIZE 2g;
ALTER DATABASE ADD STANDBY LOGFILE THREAD 2 group 22('/backup/onlinelog/standby18.ora') SIZE 2g;

ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 group23 ('/backup/onlinelog/standby19.log') SIZE 2g;
ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 group 24 ('/backup/onlinelog/standby20.ora') SIZE 2g;
ALTER DATABASE ADD STANDBY LOGFILE THREAD 1 group 25 ('/backup/onlinelog/standby21.ora') SIZE 2g;

ALTER DATABASE ADD STANDBY LOGFILE THREAD 2 group 26 ('/backup/onlinelog/standby22.ora') SIZE 2g;


八:-- 检查 standby 日志应用情况.

先查看主库归档的位置:备库比主库小点正常。

 SYS@JLPROJCT4> select sequence#,thread#,first_time,next_time,APPLIED from v$archived_log order by 1;     

 SEQUENCE#    THREAD# FIRST_TIME         NEXT_TIME          APPLIED

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

     27387          1 26-OCT-15          26-OCT-15          NO

     27388          1 26-OCT-15          26-OCT-15          NO

     27388          1 26-OCT-15          26-OCT-15          NO

     27389          1 26-OCT-15          26-OCT-15          NO

     27390          1 26-OCT-15          26-OCT-15          NO

 SYS@JLPROJCT4> select sequence#,thread#,first_time,next_time,APPLIED from v$archived_log order by 1;     

 SEQUENCE#    THREAD# FIRST_TIM NEXT_TIME APPLIED

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

     27377          1 26-OCT-15 26-OCT-15 NO

     27378          1 26-OCT-15 26-OCT-15 NO

     27379          1 26-OCT-15 26-OCT-15 NO

     27380          1 26-OCT-15 26-OCT-15 NO

     27381          1 26-OCT-15 26-OCT-15 NO

     27382          1 26-OCT-15 26-OCT-15 NO

     27383          1 26-OCT-15 26-OCT-15 NO

     27384          1 26-OCT-15 26-OCT-15 NO

     27385          1 26-OCT-15 26-OCT-15 NO

     27386          1 26-OCT-15 26-OCT-15 NO

     27387          1 26-OCT-15 26-OCT-15 NO

     27388          1 26-OCT-15 26-OCT-15 NO

九:关掉MRP进程,然后以只读的方式,打开数据库,再重新打开MRP进程。

SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;

SYS@JLPROJCT3> alter database open read only;

Database altered.

SYS@JLPROJCT3> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION; #归档之后 才应用
alter database recover managed standby database using current logfile disconnect from session;#实时应用日志

Database altered.


错误处理:

1.standby数据库mount时,

SQL> alter database mount
alter database mount standby database
*
ERROR at line 1:
ORA-01103: database name 'RACDB' in control file is not 'ORADB'

解决: 是由于备库的 初始化参数文件 db_name 和主库配置的不一样. 主备数据库的db_name 要一致.实例名称可以不一致.

2.

=====================
Tue Jul  1 13:42:27 2008
Errors in file /app/oracle/admin/oradb/bdump/oradb_mrp0_6850.trc:
ORA-00313: open failed for members of log group 1 of thread 1
ORA-00312: online log 1 thread 1: '+RECOVERYDEST/racdb/onlinelog/group_1.257.657295339'
ORA-17503: ksfdopn:2 Failed to open file +RECOVERYDEST/racdb/onlinelog/group_1.257.657295339
ORA-15001: diskgroup "RECOVERYDEST" does not exist or is not mounted
ORA-15077: could not locate ASM instance serving a required diskgroup
ORA-29701: unable to connect to Cluster Manager
ORA-00312: online log 1 thread 1: '+DG1/racdb/onlinelog/group_1.261.657295335'
ORA-17503: ksfdopn:2 Failed to open file +DG1/racdb/onlinelog/group_1.261.657295335
ORA-15001: diskgroup "DG1" does not exist or is not mounted
ORA-15077: could not locate ASM instance serving a required diskgroup
ORA-29701: unable to connect to Cluster Manager
Tue Jul  1 13:42:27 2008


说明: 第一次出现这个错误是正常的.因为standby db 没有primary 的online log , db 会自动处理把parimay db 的online log copy 到 standby 机器上面.

 3,备库没有RFS进程,可知道这个进程是备库接受主库传来的日志的。

SYS@JLPROJCT4> SELECT PROCESS, STATUS, THREAD#, SEQUENCE#, BLOCK#, BLOCKS FROM V$MANAGED_STANDBY;

PROCESS   STATUS          THREAD#  SEQUENCE#     BLOCK#     BLOCKS
--------- ------------ ---------- ---------- ---------- ----------
ARCH      CONNECTED             0          0          0          0
ARCH      CONNECTED             0          0          0          0
ARCH      CONNECTED             0          0          0          0
ARCH      CONNECTED             0          0          0          0

MRP0      WAIT_FOR_LOG          2      25234          0          0

解决:备库口令文件失效导致,把主库的口令文件,scp到standby库相应目录,重启standby,就OK了。

SYS@JLPROJCT4> SELECT PROCESS, STATUS, THREAD#, SEQUENCE#, BLOCK#, BLOCKS FROM V$MANAGED_STANDBY;

PROCESS   STATUS          THREAD#  SEQUENCE#     BLOCK#     BLOCKS
--------- ------------ ---------- ---------- ---------- ----------
ARCH      CONNECTED             0          0          0          0
ARCH      CONNECTED             0          0          0          0
ARCH      CONNECTED             0          0          0          0
ARCH      CONNECTED             0          0          0          0
RFS       IDLE                  0          0          0          0
RFS       IDLE                  0          0          0          0
RFS       IDLE                  0          0          0          0
MRP0      WAIT_FOR_LOG          2      25234          0          0
RFS       IDLE                  0          0          0          0
RFS       IDLE                  0          0          0          0

10 rows selected.

4,

RMAN> restore database;
Starting restore at 26-JUL-12
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=47 devtype=DISK
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 07/26/2012 12:41:17
RMAN-06026: some targets not found - aborting restore
RMAN-06023: no backup or copy of datafile 7 found to restore
RMAN-06023: no backup or copy of datafile 6 found to restore
RMAN-06023: no backup or copy of datafile 5 found to restore
RMAN-06023: no backup or copy of datafile 4 found to restore
RMAN-06023: no backup or copy of datafile 3 found to restore
RMAN-06023: no backup or copy of datafile 2 found to restore
RMAN-06023: no backup or copy of datafile 1 found to restore
原因:这个是由于
Oracle使用的当前控制文件不允许
从这个历史的备份集中进行恢复,从而导致了RMAN-06026这个错误
解决:在主库重新创建standby  控制文件,
SQL> ALTER DATABASE CREATE STANDBY CONTROLFILE AS '/app/temp/standby.ctl';
然后传给备库, 名字和路径要和参数文件制定的路径和名字一致。


附录:
主库参数文件:

[oracle@rac1 backup]$ cat pfile.ora

JLPROJCT2.__db_cache_size=181999239168

JLPROJCT1.__db_cache_size=177704271872

JLPROJCT2.__java_pool_size=536870912

JLPROJCT1.__java_pool_size=536870912

JLPROJCT2.__large_pool_size=536870912

JLPROJCT1.__large_pool_size=536870912

JLPROJCT1.__oracle_base='/oracle'#ORACLE_BASE set from environment

JLPROJCT2.__oracle_base='/oracle'#ORACLE_BASE set from environment

JLPROJCT2.__pga_aggregate_target=63350767616

JLPROJCT1.__pga_aggregate_target=63350767616

JLPROJCT2.__sga_target=209916526592

JLPROJCT1.__sga_target=209916526592

JLPROJCT2.__shared_io_pool_size=0

JLPROJCT1.__shared_io_pool_size=0

JLPROJCT2.__shared_pool_size=25769803776

JLPROJCT1.__shared_pool_size=28991029248

JLPROJCT2.__streams_pool_size=0

JLPROJCT1.__streams_pool_size=1073741824

*.audit_file_dest='/oracle/admin/JLPROJCT/adump'

*.audit_trail='db'

*.cluster_database=true

*.compatible='11.2.0.0.0'

*.control_files='+DATA/jlprojct/controlfile/current.260.865954309','+ARCH/jlprojct/controlfile/current.256.865954309'

*.db_block_size=8192

*.db_create_file_dest='+DATA'

*.db_domain=''

*.db_file_name_convert='/backup/data/JLPROJCT/','+data/jlprojct/datafile/'

*.db_name='JLPROJCT'

*.db_recovery_file_dest='+ARCH'

*.db_recovery_file_dest_size=536870912000

*.db_unique_name='JLPROJCT'

*.diagnostic_dest='/oracle'

*.dispatchers='(PROTOCOL=TCP) (SERVICE=JLPROJCTXDB)'

JLPROJCT1.fal_client='JLPROJCT1'

JLPROJCT2.fal_client='JLPROJCT2'

*.fal_client='JLPROJCT'

*.fal_server='JLPROJCT3'

JLPROJCT1.instance_number=1

JLPROJCT2.instance_number=2

*.log_archive_config='DG_CONFIG=(JLPROJCT,JLPROJCT3,JLPROJCT4)'

*.log_archive_dest_1='location=+arch/jlprojct/archivelog VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=JLPROJCT'

*.log_archive_dest_2='SERVICE=JLPROJCT3  LGWR SYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=JLPROJCT3'

*.log_archive_dest_3='SERVICE=JLPROJCT4  LGWR  SYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=JLPROJCT4'

*.log_archive_dest_state_1='ENABLE'

*.log_archive_dest_state_2='ENABLE'

*.log_archive_format='%t_%s_%r.dbf'

*.log_file_name_convert='/backup/arch/','+arch/jlprojct/archivelog/'

*.nls_language='SIMPLIFIED CHINESE'

*.nls_territory='CHINA'

*.open_cursors=300

*.pga_aggregate_target=62914560000

*.processes=10000

*.remote_listener='rac-scan:1521'

*.remote_login_passwordfile='EXCLUSIVE'

*.sessions=10000

*.sga_target=209715200000

*.standby_file_management='AUTO'

JLPROJCT2.thread=2

JLPROJCT1.thread=1

JLPROJCT1.undo_tablespace='UNDOTBS1'

JLPROJCT2.undo_tablespace='UNDOTBS2'

standby库参数文件:
[oracle@java3 dbs]$ cat initJLPROJCT4.ora
JLPROJCT1.__db_cache_size=180388626432
JLPROJCT2.__db_cache_size=184683593728
JLPROJCT3.__db_cache_size=196494753792
JLPROJCT4.__db_cache_size=196494753792
JLPROJCT1.__java_pool_size=536870912
JLPROJCT2.__java_pool_size=536870912
JLPROJCT3.__java_pool_size=536870912
JLPROJCT4.__java_pool_size=536870912
JLPROJCT1.__large_pool_size=536870912
JLPROJCT2.__large_pool_size=536870912
JLPROJCT3.__large_pool_size=536870912
JLPROJCT4.__large_pool_size=536870912
JLPROJCT1.__oracle_base='/oracle'#ORACLE_BASE set from environment
JLPROJCT2.__oracle_base='/oracle'#ORACLE_BASE set from environment
JLPROJCT3.__oracle_base='/opt/oracle'#ORACLE_BASE set from environment
JLPROJCT4.__oracle_base='/opt/oracle'#ORACLE_BASE set from environment
JLPROJCT1.__pga_aggregate_target=63350767616
JLPROJCT2.__pga_aggregate_target=63350767616
JLPROJCT3.__pga_aggregate_target=63350767616
JLPROJCT4.__pga_aggregate_target=63350767616
JLPROJCT1.__sga_target=209916526592
JLPROJCT2.__sga_target=209916526592
JLPROJCT3.__sga_target=209916526592
JLPROJCT4.__sga_target=209916526592
JLPROJCT1.__shared_io_pool_size=0
JLPROJCT2.__shared_io_pool_size=0
JLPROJCT3.__shared_io_pool_size=0
JLPROJCT4.__shared_io_pool_size=0
JLPROJCT1.__shared_pool_size=26306674688
JLPROJCT2.__shared_pool_size=23085449216
JLPROJCT3.__shared_pool_size=11274289152
JLPROJCT4.__shared_pool_size=11274289152
JLPROJCT1.__streams_pool_size=1073741824
JLPROJCT2.__streams_pool_size=0
JLPROJCT3.__streams_pool_size=0
JLPROJCT4.__streams_pool_size=0
*.audit_file_dest='/oracle/admin/JLPROJCT/adump'
*.audit_trail='none'
*.cluster_database=false
*.compatible='11.2.0.0.0'
*.control_files='/opt/oracle/control_1.ctl','/opt/oracle/control_2.ctl'
*.db_block_size=8192
*.db_create_file_dest='+DATA'
*.db_domain=''
*.DB_FILE_NAME_CONVERT='+data/jlprojct/datafile/','/backup/','+DATA/jlprojct/tempfile/','/backup/'
*.DB_NAME='JLPROJCT'
*.db_recovery_file_dest='/backup/'
*.db_recovery_file_dest_size=536870912000
*.DB_UNIQUE_NAME='JLPROJCT4'
*.diagnostic_dest='/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=JLPROJCTXDB)'
##JLPROJCT1.fal_client='JLPROJCT1'
##JLPROJCT2.fal_client='JLPROJCT2'
*.FAL_SERVER='JLPROJCT'
*.LOG_ARCHIVE_CONFIG='DG_CONFIG=(JLPROJCT4,JLPROJCT)'
*.LOG_ARCHIVE_DEST_1='location=/backup/
  VALID_FOR=(ALL_LOGFILES,ALL_ROLES)
  DB_UNIQUE_NAME=JLPROJCT4'
*.log_archive_dest_2='SERVICE=JLPROJCT LGWR SYNC  VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)   DB_UNIQUE_NAME=JLPROJCT'
*.LOG_ARCHIVE_DEST_STATE_1='ENABLE'
*.LOG_ARCHIVE_DEST_STATE_2='ENABLE'
*.LOG_ARCHIVE_FORMAT='%t_%s_%r.arc'
*.LOG_FILE_NAME_CONVERT='+DATA/jlprojct/onlinelog/','/backup/','+ARCH/jlprojct/onlinelog/','/backup/','+ARCH/jlprojct/archivelog/','/backup/'
*.nls_language='AMERICAN'
*.nls_territory='CHINA'
*.open_cursors=300
*.pga_aggregate_target=62914560000
*.processes=3000
*.REMOTE_LOGIN_PASSWORDFILE='EXCLUSIVE'
*.sessions=3305
*.sga_target=209715200000
*.STANDBY_FILE_MANAGEMENT='AUTO'
JLPROJCT2.thread=2
JLPROJCT1.thread=1
JLPROJCT1.undo_tablespace='UNDOTBS1'




补充:
备库创建并配置 Standby Redo Log 是为了能够接收到主库传过来的日志,用作恢复
主库创建并配置 Standby Redo Log 是为了在主备切换之后,能够接收到原备库(切换之后的主库)传过来的日志
        
       ㈠ 创建 Standby Redo Log
         创建的原则:
          ① Standby Redo Log 的文件大小与主库 online redo log 文件大小相同
          ② Standby Redo Log 日志文件组的个数依照下面的原则进行计算:
              Standby redo log组数公式 >= (每个instance日志组个数+1)*instance个数
              例如在我的环境中,只有一个节点,这个节点有三组redo,所以
              Standby redo log组数公式>=(3+1)*1  == 4
              所以需要创建4组Standby redo log
          ③ 每一日志组为了安全起见,可以做多路镜像

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29654823/viewspace-1826782/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/29654823/viewspace-1826782/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值