设为首页 加入收藏

TOP

Oracle 11g DataGuard物理standby配置(一)
2014-11-24 02:35:08 来源: 作者: 【 】 浏览:5
Tags:Oracle 11g DataGuard 物理 standby 配置

看到oracle官方文档说oracle 11g dataguard在物理standby机器上出于open状态也可以应用redo,所以就在本地试验了下,确实如此,这样既可以应用redo也可以进行数据查询和数据库的备份.既解决了数据的容灾也解决了主数据库的压力.

Oracle dataguard 简介

Dataguard分为2类:

物理standby: 此类型分为redo应用、read-only模式、read-write模式,当处于redo应用的时候,不能进行相关的查询操作,当处于read-only时,不能应用redo,但是在oracle 11G版本之后,在read-only下可以应用redo,当处于read-write时, 暂停从primary接受redo数据.

逻辑standby: 此类型可以在read-write模式下,可以从primary接受redo数据,并且可以应用redo.

关于2者的区别和特点,大家可以自己在网上进行搜索,我这里就不一一说了.

2种类型的相关进程:

物理standby相关进程

_ Remote file server (RFS)

负责从主数据库上接收归档文件

_ Archiver (ARCn)

将日志进行归档

Managed recovery process (MRP)

将归档文件应用到备用机上

逻辑standby相关进程

_ Remote file server (RFS)

负责从主数据库上接收归档文件

_ Archiver (ARCn)

将日志进行归档

Logical standby process (LSP)

将归档文件应用到备用机上

实验环境:

本次试验使用vmware server 1.6虚拟机,相关的IP规划如下:

192.168.137.93 primary数据库

192.168.137.94 standby数据库

在2个服务器上执行如下操作:

# vi /etc/hosts

192.168.137.93 node1

192.168.137.94 node2

软件环境

数据库: oracle 11G

Dataguard 配置:

在primary服务器上执行如下操作

SQL> ALTER DATABASE FORCE LOGGING; //将primary数据库设置

FORCE LOGGING模式

SQL> create pfile from spfile; //创建一个pfile,可以方便编辑,我这里把spfile放到另外一个路径,让oracle读取pfile.

pfile文件添加如下内容:

*.DB_UNIQUE_NAME=uqn_node1 //自定义一个

unique_name名字

*.LOG_ARCHIVE_CONFIG='DG_CONFIG=(uqn_node1,uqn_node2)' //此处为主备服务器unique_name

*.LOG_ARCHIVE_DEST_2='SERVICE=node2 ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=uqn_node2'

*.LOG_ARCHIVE_DEST_STATE_1=ENABLE

*.LOG_ARCHIVE_DEST_STATE_2=ENABLE

*.LOG_ARCHIVE_MAX_PROCESSES=30

*.FAL_SERVER=node2 //这里为net

service name

*.FAL_CLIENT=node1

*.STANDBY_FILE_MANAGEMENT=AUTO

假如数据库处在非归档模式下执行下面的sql(此步骤因是否处于归档模式而定)

SQL> SHUTDOWN IMMEDIATE;

SQL> STARTUP MOUNT;

SQL> ALTER DATABASE ARCHIVELOG;

SQL> ALTER DATABASE OPEN;

为STANDBY数据创建控制文件

SQL> SHUTDOWN IMMEDIATE;

SQL> STARTUP MOUNT;

SQL> ALTER DATABASE CREATE STANDBY CONTROLFILE AS '/home/oradata/wiliiwin.ctl';

SQL> ALTER DATABASE OPEN;

复制primary服务器的文件(数据文件、密码文件、pfile文件、控制文件)到STANDBY服务器上

# cd /home/oracle/dbs

# cp initora10.ora orapwora10 /home/oradata/

# cd /home/

$ scp -r admin/ oradata/ oracle@node2:/home/oradata

到STANDBY服务器上执行下面的操作

$ cd /home/oradata/ora10

$ rm -rf control0*

$ mv ../wiliiwin.ctl control01.ctl

$ cp control01.ctl control02.ctl

$ cp control01.ctl control03.ctl

$ cd /home/oracle/dbs

$ mv /home/oradata/initora10.ora .

$ mv /home/oradata/orapwora10 .

$ vi initora10.ora //需要把里面的内

容稍微修改下

*.DB_UNIQUE_NAME=uqn_node2 //自定义一个

unique_name名字

*.LOG_ARCHIVE_CONFIG='DG_CONFIG=(uqn_node1,uqn_node2)' //此处为主备服务器的unique_name

*.LOG_ARCHIVE_DEST_2='SERVICE=node1 ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=uqn_node1'

*.LOG_ARCHIVE_DEST_STATE_1=ENABLE

*.LOG_ARCHIVE_DEST_STATE_2=ENABLE

*.LOG_ARCHIVE_MAX_PROCESSES=30

*.FAL_SERVER=node1 //这里为net

首页 上一页 1 2 下一页 尾页 1/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Oracle数据库通过在线重定义的方.. 下一篇查询Oracle表实际物理使用大小

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: