探索Oracle 11gR2 DataGuard_02配置

探索Oracle 11gR2 DataGuard_02配置

作者:吴伟龙

配置步骤:

一、开启强制日志

二、配置pri端传输参数

三、备份pri端数据库

四、拷贝文件到sty端

五、配置sty端传输参数

六、将sty端启动到mount状态并恢复数据

七、在pri端应用发送归档日志文件

八、在sty端开启强制redo应用

九、配置standby日志

十、在pri端启动强制日志应用

 

11gR2DG传输架构

图:



DBName


Role


DB_UNIQUE_NAME


Oracle Net Service Name


Woo


Primary


Pri


PRI


Physical standby


Sty


STY

 

一、两节点分别输入如下命令开启强制日志模式:

SQL> startup mount;
SQL> alter database archivelog;
SQL> alter database open;
SQL> alter database force logging;

 

二、修改Pri端参数文件:

SQL> alter system set db_unique_name =pri scope=spfile;
SQL> alter system set log_archive_config= 'DG_CONFIG=(pri,sty)' scope=spfile;
SQL>alter system set log_archive_dest_1= 'LOCATION=/DBBackup/Archive VALID_FOR=(ALL_LOGFILES,ALL_ROLES)DB_UNIQUE_NAME=pri' scope=spfile;
SQL> alter system set log_archive_dest_2= 'SERVICE=sty LGWR SYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)DB_UNIQUE_NAME=sty' scope=spfile;
SQL> alter system setlog_archive_dest_state_2 = DEFER;
alter system set fal_server=styscope=spfile;
SQL> alter system set fal_client=priscope=spfile;
SQL> alter system setstandby_file_management=AUTO scope=spfile;
 

三、在Pri端输入如下命令,创建standby控制文件

SQL> alter database create standbycontrolfile as '/DBBackup/Phycal/stycontrol.ctl';
 

四、通过rman备份pri端数据库

Rman>backup database format'/DBBackup/Phycal/full_db_%U';

#copy file to standby
监听文件:listener.oratnsnames.ora
参数文件:initWoo.ora
密码文件:orapwWoo
sty控制文件:stycontrol.ctl
全库备份文件:full_db_*
日志输出目录:$ORACLE_BASE/admin$ORACLE_BASE/diag

五、拷贝监听文件,参数文件,密码文件,sty端控制文件,rman备份文件,admin/目录,diag诊断目录,flash_recovery_area目录,归档目录 到sty端用于恢复及起库

[oracle@pri ~]$ cd$ORACLE_HOME/network/admin     --拷贝监听文件
[oracle@pri admin]$ ls
listener.ora  samples shrept.lst  tnsnames.ora
[oracle@pri admin]$ scp *.orasty:$ORACLE_HOME/network/admin
oracle@sty's password:
listener.ora                                                                100%  294    0.3KB/s   00:00
tnsnames.ora                                                               100%  669     0.7KB/s  00:00   

[oracle@pri admin]$ cd $ORACLE_HOME/dbs         --拷贝密码文件及pfile参数文件
[oracle@pri dbs]$ ls
hc_DBUA0.dat  hc_Woo.dat init.ora  initWoo.ora  lkPRI lkWOO  orapwWoo  snapcf_Woo.f spfileWoo.ora
[oracle@pri dbs]$ scp initWoo.ora orapwWoosty:$ORACLE_HOME/dbs
oracle@sty's password:
initWoo.ora                                                                 100%  999    1.0KB/s   00:00
orapwWoo                                                                   100% 1536     1.5KB/s   00:00   

[oracle@pri dbs]$ cd /DBBackup/Phycal/             --拷贝备份文件
[oracle@pri Phycal]$ ls
full_db_01o9j16h_1_1  full_db_02o9j17b_1_1  stycontrol.ctl
[oracle@pri Phycal]$ scp full_db_0*stycontrol.ctl sty:/DBBackup/Phycal/
oracle@sty's password:
full_db_01o9j16h_1_1                                                         100%  943MB  20.1MB/s  00:47
full_db_02o9j17b_1_1                                                         100% 9600KB   9.4MB/s   00:01
stycontrol.ctl                                                               100% 9520KB   9.3MB/s   00:00

[oracle@pri ~]$ cd $ORACLE_BASE      --拷贝admin/,diag/,flash_recovery_area三目录
[oracle@pri DBSoft]$ ls
admin cfgtoollogs  checkpoints  diag flash_recovery_area  oraInventory  Product
[oracle@pri DBSoft]$ scp -r admin/ diag/admin/ flash_recovery_area/ sty:$ORACLE_BASE

六、修改sty端pfile参数文件,添加和修改如下内容

vi /DBSoft/Product/11.2.0/db_1/dbs/initWoo.ora
*.db_unique_name=sty
*.log_archive_config='DG_CONFIG=(pri,dg)'
*.log_archive_dest_1='LOCATION=/DBBackup/ArchiveVALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=sty'
*.log_archive_dest_2='SERVICE=pri LGWR SYNCVALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=pri'
*.fal_server=pri
*.fal_client=sty
*.standby_file_management=AUTO
#*.db_file_name_convert='pri','pri'
#*.log_file_name_convert='pri','pri'
*.control_files='/DBBackup/Phycal/control01.ctl'

七、启动sty端数据库到mount状态,并恢复pri端数据库到sty端

SQL> startup mountpfile='/DBSoft/Product/11.2.0/db_1/dbs/initWoo.ora';
ORACLE instance started.

Total System Global Area  839282688 bytes
Fixed Size                  2217992 bytes
Variable Size             507512824 bytes
Database Buffers          327155712 bytes
Redo Buffers                2396160 bytes
Database mounted.
SQL> exit

[oracle@sty Phycal]$ export ORACLE_SID=Woo
[oracle@sty Phycal]$ rman target /                         --进入rman开始恢复数据库

Recovery Manager: Release 11.2.0.1.0 -Production on Tue May 14 03:22:47 2013

Copyright (c) 1982, 2009, Oracle and/or itsaffiliates.  All rights reserved.

connected to target database: WOO(DBID=4154863782, not open)

RMAN> catalog start with'/DBBackup/Phycal/';

Starting implicit crosscheck backup at14-MAY-13
using target database control file insteadof recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=25 device type=DISK
Finished implicit crosscheck backup at14-MAY-13

Starting implicit crosscheck copy at14-MAY-13
using channel ORA_DISK_1
Finished implicit crosscheck copy at14-MAY-13

searching for all files in the recoveryarea
cataloging files...
no files cataloged

searching for all files that match thepattern /DBBackup/Phycal/

List of Files Unknown to the Database
=====================================
File Name:/DBBackup/Phycal/full_db_01o9j16h_1_1
File Name:/DBBackup/Phycal/full_db_02o9j17b_1_1

Do you really want to catalog the abovefiles (enter YES or NO)? yes
cataloging files...
cataloging done

List of Cataloged Files
=======================
File Name:/DBBackup/Phycal/full_db_01o9j16h_1_1
File Name:/DBBackup/Phycal/full_db_02o9j17b_1_1

RMAN> restore database;

Starting restore at 14-MAY-13
using target database control file insteadof recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=25 device type=DISK

channel ORA_DISK_1: starting datafilebackup set restore
channel ORA_DISK_1: specifying datafile(s)to restore from backup set
channel ORA_DISK_1: restoring datafile00001 to /DBData/Woo/Woo/system01.dbf
channel ORA_DISK_1: restoring datafile00002 to /DBData/Woo/Woo/sysaux01.dbf
channel ORA_DISK_1: restoring datafile00003 to /DBData/Woo/Woo/undotbs01.dbf
channel ORA_DISK_1: restoring datafile00004 to /DBData/Woo/Woo/users01.dbf
channel ORA_DISK_1: reading from backuppiece /DBBackup/Phycal/full_db_01o9j16h_1_1
channel ORA_DISK_1: piecehandle=/DBBackup/Phycal/full_db_01o9j16h_1_1 tag=TAG20130514T025617
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete,elapsed time: 00:00:13
Finished restore at 14-MAY-13

RMAN>                     ---至此恢复工作已经完成

八、在pri端应用接受归档日志文件

SQL> ALTER SYSTEM SETLOG_ARCHIVE_DEST_STATE_2=ENABLE;

System altered.
 

九、再sty上启动日志应用

SQL> alter database recover managedstandby database disconnect from session;

Database altered.

十、在sty端配置standby 日志,并使其进入active状态生效,通常需要重启一遍备库:

SQL> alter database add standby logfile
group 4 ('/DBData/Woo/Woo/styredo04.log')size 50m,
group 5 ('/DBData/Woo/Woo/styredo05.log')size 50m,
group 6 ('/DBData/Woo/Woo/styredo06.log')size 50m,
group 7 ('/DBData/Woo/Woo/styredo07.log')size 50m;

SQL> SELECTGROUP#,THREAD#,SEQUENCE#,ARCHIVED,STATUS FROM V$STANDBY_LOG;

   GROUP#    THREAD#  SEQUENCE# ARC STATUS
---------- ---------- ---------- -------------
        4          0          0 YES UNASSIGNED
        5          0          0 YES UNASSIGNED
        6          0          0 YES UNASSIGNED
        7          0          0 YES UNASSIGNED

SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.

Total System Global Area  839282688 bytes
Fixed Size                  2217992 bytes
Variable Size             507512824 bytes
Database Buffers          327155712 bytes
Redo Buffers                2396160 bytes
Database mounted.
Database opened.
SQL> SELECTGROUP#,THREAD#,SEQUENCE#,ARCHIVED,STATUS FROM V$STANDBY_LOG;

   GROUP#    THREAD#  SEQUENCE# ARC STATUS
---------- ---------- ---------- -------------
        4          1         11 YES ACTIVE
        5          1          0 NO UNASSIGNED
        6          0          0 YES UNASSIGNED
        7          0          0 YES UNASSIGNED

SQL>

 

十一、在pri端启动redo应用

SQL> recover managed standby database usingcurrent logfile disconnect from session;

 

查看DG数据保护模式:

SQL> select protection_mode,protection_level from v$database;

PROTECTION_MODE      PROTECTION_LEVEL
-------------------- --------------------
MAXIMUM PERFORMANCE  MAXIMUM PERFORMANCE

附录:

十二、需修改添加的参数介绍:


角色


参数名称


介绍


Pri


DB_NAME


数据库名称,primary端和standby端相同


DB_UNIQUE_NAME


指定唯一名称,区别pri 端和 sty端


LOG_ARCHIVE_CONFIG


指定DG的全局日志配置,包含所有数据库的名称,及归档路径


CONTROL_FILES


控制文件路径及名称


LOG_ARCHIVE_DEST_n


指定主备库的归档路径


LOG_ARCHIVE_DEST_STATE_n


配置是否允许通过redo进行日志传输及路径


REMOTE_LOGIN_PASSWORDFILE


配置远程登陆模式,是否独享还是共享


LOG_ARCHIVE_FORMAT


配置归档日志文件存储格式规范


LOG_ARCHIVE_MAX_PROCESS=integer


配置归档进程数量,默认为4


FAL_SERVER


配置服务器角色


DB_FILE_NAME_CONVERT


配置数据库数据文件转换,用在主备库数据文件路径不一致


LOG_FILE_NAME,_CONVERT


配置数据库redo日志文件转换,用在主备库redo日志文件路径不一致


STANDBY_FILE_MANAGEMENT


配置备库是否同步主库的表空间添加或数据文件添加。


sty


DB_UNIQUE_NAME


指定唯一名称,区别pri 端和 sty端


CONTROL_FILES


控制文件路径及名称


DB_FILE_NAME,_CONVERT


配置数据库数据文件转换,用在主备库数据文件路径不一致


LOG_FILE_NAME_CONVERT


配置数据库数据文件转换,用在主备库数据文件路径不一致


LOG_ARCHIVE_DEST_n


指定主备库的归档路径


FAL_SERVERS


配置服务器角色

 

 

 

 

十三、监听信息:

listener.ora
[oracle@sty admin]$ cat listener.ora
# listener.ora Network Configuration File:/DBSoft/Product/11.2.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
 (SID_LIST =
   (SID_DESC =
     (SID_NAME = PLSExtProc)
     (ORACLE_HOME = /DBSoft/Product/11.2.0/db_1)
    (PROGRAM = extproc)
    )
     (SID_DESC =
    (SID_NAME = Woo )
    (ORACLE_HOME = /DBSoft/Product/11.2.0/db_1)
    )
   )
 -----------------------------------------------------------------------------------------------------------------------------------------------------
[oracle@sty admin]$cat tnsname.ora
# tnsnames.ora Network Configuration File:/DBSoft/Product/11.2.0/db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.

STY =
 (DESCRIPTION =
   (ADDRESS_LIST =
     (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.7.102)(PORT = 1521))
    )
   (CONNECT_DATA =
     (SERVICE_NAME = woo)
    )
  )

PRI =
 (DESCRIPTION =
   (ADDRESS_LIST =
     (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.7.101)(PORT = 1521))
    )
   (CONNECT_DATA =
     (SERVICE_NAME = woo)
    )
  )
时间: 2024-09-22 12:19:48

探索Oracle 11gR2 DataGuard_02配置的相关文章

探索Oracle之数据库升级八 12c Downgrade 11gR2

探索Oracle之数据库升级八12c Downgrade 11gR2 前言:        我们前面已经完成了11gR2 upgrade to 12c 的升级,整个过程还是比较顺利的,虽然和以前版本升级有些不太一样,但是整个难度不是太大,但是由于太多的特性不同,大大的加长了升级的时间.        但是对于Oracle 12c降回到之前版本,会有些限制,只能降级到升级前所用的版本和补丁级别.        如果我们是直接从10.2.0.5.11.1.0.7或版本11.2.0.2及更高版进行升级

探索Oracle之数据库升级七 11gR2 to 12c 升级完成后插入PDB

探索Oracle之数据库升级七11gR2 to 12c 升级完成后插入PDB 前言:        从Oracle 12c开始,引入了容器数据库的概念,可以实现数据库插拔操作,如下图:现在我们就来看看如何将11.2.0.4的数据库插入到12c的CDP里面去,让其成为一个PDB 数据库. 一.查看数据库信息: SQL> col BANNER format a80 SQL> set line 300 SQL> select * from v$version; BANNER CON_ID --

Oracle 11gR2 RAC Database使用emca配置集群dbconsole

下面的步骤详细的说明了在Oracle 11gR2 RAC Database环境下使用emca配置集群dbconsole遇到的部分问题及解决的方法. 1.数据库环境.Oracle Exadata Machine x4-2Oracle RAC Database 11.2.0.4.6 for Linux x86_64bit[root@dm01db01 ~]# uname -r2.6.39-400.126.1.el5uek 2.使用EMCA创建EM.[root@dm01db01 ~]# su - ora

oracle11g-win7 64安装oracle 11gr2时net config assistant出错

问题描述 win7 64安装oracle 11gr2时net config assistant出错 Oracle Net Services 配置: # An unexpected error has been detected by HotSpot Virtual Machine: # EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x00000000071ceb3f, pid=6532, t id=6516 # Java VM: Java HotS

用PXE方法从裸机批量推Oracle 11gR2 RAC环境

       9月29日,由中科院高级工程师唐波在"DBA+福州群"进行了一次关于用PXE方法从裸机批量推Oracle 11gR2 RAC环境的线上主题分享.小编特别整理出其中精华内容,供大家学习交流.     嘉宾简介    唐波,福建省第一批Oracle ERP实施顾问,中国科学院最佳技术顾问.Oracle 10g/11g OCM.RHCE,ACOUG&SHOUG核心成员.   2004年4月到2006年12月在北京担任中科院ARP项目组数据仓库架构师,参与完成该项目中的数

探索Oracle之数据库升级一 升级补丁修复概述

探索Oracle之数据库升级一  升级补丁修复概述 一. 升级路线图         无论你是谁,要想做数据库升级,我想一定离不开如下这张升级线路图:企业中数据库的升级是一个浩大的工程,但是却又必不可少,小在打一个PSU解决一个简单的问题或实现某个功能,大到打安装Patch对数据库版本升级,都是作为一名合格的DBA必备的技能.再后面的几篇博客当中将详细讲述如何将数据库从11.2.0.3.0升级到11.2.0.4并且打上最新的OPATCH之后再升级到Oracle 12c.   二.  升级类型:

探索ORACLE之11g DataGuard_04 Oracle EnterPrise Manager OEM部署

探索ORACLE之11g DataGuard_04 Oracle EnterPrise Manager OEM部署 作者:吴伟龙 我们可以看到EM这个时候无法起来,需要重新配置: emctl startup console Environment variable ORACLE_UNQNAME not defined. Please set ORACLE_UNQNAME to database unique name. 重新配置Oracle EnterPrise Manager [oracle@

探索Oracle之数据库升级二 11.2.0.3升级到11.2.0.4完整步骤

探索Oracle之数据库升级二  11.2.0.3升级到11.2.0.4完整步骤   说明:         这篇文章主要是记录下单实例环境下Oracle 11.2.0.1升级到11.2.0.3的过程,当然RAC的升级是会有所不同.但是他们每个版本之间升级步骤都是差不多的,先升级Database Software,再升级Oracle Instance.  Oracle 11.2.0.4的Patchset No:19852360下载需要有Oracle Support才可以.  Patchset包含

探索Oracle之数据库升级六 11.2.0.4.3 Upgrade12c(12.1.0.1)

探索Oracle之数据库升级六11.2.0.4.3 Upgrade12c(12.1.0.1) 一.前言:       Oracle 12c发布距今已经一年有余了,其最大亮点是一个可以插拔的数据库(PDB),这是在之前版本没有的:但是如果我们要将以前版本的数据库升级到12c来,那么也应顺其自然的将其变成一个pdb,那么我们的工作不仅包含了数据库软件的升级,同时也包含如何将一个NO-CDB的数据库plug to CDB none. 二.升级要求:   三.升级前准备:          3.1.查看