Chinaunix首页 | 论坛 | 博客
  • 博客访问: 104547488
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: Oracle

2008-05-28 08:05:33

  来源:赛迪网    作者:Bennett

从Oracle 11g数据库开始,Oracle支持在特定条件下Windows与Linux两个不同OS平台之间配置DATA GUARD,这样DATA GUARD再也不受原来需要同样OS平台的限制了(具体参考Metalink:413484.1):

配置过程示例:

主库:Windows 2003 +Oracle 11.1.0.6

SID:orcl

数据文件目录:D:\ORACLE\ORADATA\ORCL\

备用库:RHEL 4 U5+Oracle 11.1.0.6

SID:standby

数据文件目录:/home/oracle/opt/oradata/standby/

1、验证主库是归档模式,并将主库置于FORCE LOGGING模式:

SQL> archive log list

Database log mode Archive Mode

Automatic archival Enabled

Archive destination USE_DB_RECOVERY_FILE_DEST

Oldest online log sequence 229

Next log sequence to archive 231

Current log sequence 231

SQL> alter database force logging;

2、对主库做一个全库的RMAN备份,用于STANDBY配置:

RMAN> backup database format 'd:\db_%U.bak';

3、准备STANDBY数据文件路径和其他路径:

[oracle@test51 oradata]$ pwd

/home/oracle/opt/oradata

[oracle@test51 oradata]$ mkdir standby

[oracle@test51 oradata]$ cd standby

[oracle@test51 oradata]$ mkdir archive

[oracle@test51 oradata]$ cd $ORACLE_BASE/admin

[oracle@test51 admin]$ mkdir standby

[oracle@test51 oradata]$ cd standby

[oracle@test51 standby]$mkdir adump

[oracle@test51 standby]$mkdir dpdump

[oracle@test51 standby]$mkdir pfile

[oracle@test51 standby]$ ls

adump dpdump pfile

4、生成standby 初始化参数文件:

SQL> create pfile='d:/init.ora' from spfile;

添加以下几个STANDBY参数:

*.log_archive_config=’DG_CONFIG=(orcl,standby)’

*.fal_client=’standby’

*.fal_server=’primary’

*.db_file_name_convert=’D:\ORACLE\ORADATA\ORCL\’,'/home/oracle/opt/oradata/standby/’

*.log_file_name_convert=’D:\ORACLE\ORADATA\ORCL\’,'/home/oracle/opt/oradata/standby/’

*.standby_file_management=’auto’

*.log_archive_dest_1=’location=/home/oracle/opt/oradata/standby/archive VALID_FOR=(STANDBY_LOGFILE,STANDBY_ROLE)’

5、生成STANDBY控制文件:

SQL> alter database create standby controlfile as 'd:\ control01.ctl';

并将生成的STANDBY控制文件、初始化参数文件、备份集分别COPY至STANDBY端相应的目录,另外注意密码文件也需要COPY并在STANDBY端改名,因为主库和备库需要相同的密码文件,否则STANDBY无法配置成功:

[oracle@test51 standby]$ cp control01.ctl control02.ctl

[oracle@test51 standby]$ cp control01.ctl control03.ctl

[oracle@test51 standby]$ ls

archive control01.ctl control02.ctl control03.ctl db_04j3dk0q_1_1.bak db_05j3dk6n_1_1.bak

6、在STANDBY端MOUNT STANDBY数据库,可以看到从WINDOWS COPY过来的备份控制文件可以直接在LINUX底下MOUNT成功:

阅读(956) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~