Oracle DG Linux平台物理Standby搭建实例

Oracle Data Guard Linux 平台 Physical Standby 搭建实例

Data Guard 环境:

操作系统: redhat 4.7

Primary数据库:

IP地址:10.85.10.1。

数据库SID:orcl

DB_UNIQUE_NAME:orcl_pd

Standby数据库:

IP地址:10.85.10.2

数据库SID:orcl。

DB_UNIQUE_NAME:orcl_st

一、rimary 端的配置

1.  主库设置为force logging 模式

SQL> alter database force logging;

2. 主库设为归档模式

SQL> archive log list;

SQL> shutdown immediate

SQL> startup mount

SQL> alter database archivelog;

SQL> archive log list;

3. 添加redo log file

添加一个新的Standby Redologs组(注意组号不要与当前存在的Online Redologs组重复),并为该组指定一个成员:

SQL> ALTER DATABASE ADD STANDBY LOGFILE GROUP 4 ('/u01/app/oracle/oradata/orcl/redo04.log') size 50M;

SQL> ALTER DATABASE ADD STANDBY LOGFILE GROUP 5 ('/u01/app/oracle/oradata/orcl/redo05.log') size 50M;

SQL> ALTER DATABASE ADD STANDBY LOGFILE GROUP 6 ('/u01/app/oracle/oradata/orcl/redo06.log') size 50M;

SQL> ALTER DATABASE ADD STANDBY LOGFILE GROUP 7 ('/u01/app/oracle/oradata/orcl/redo07.log') size 50M;

4. 修改listener.ora 和tnsnames.ora 文件

Listener.ora 文件:

SID_LIST_LISTENER =

(SID_LIST =

(SID_DESC =

(SID_NAME = PLSExtProc)

(ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1)

(PROGRAM = extproc)

(SID_DESC =

(GLOBAL_DBNAME = orcl)

(ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1)

(SID_NAME = orcl)

LISTENER =

(DESCRIPTION_LIST =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521))

(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))

注意:SID_LIST_LISTENER 配置的是静态注册,如果没有该参数,而且Data Guard 启动顺序又不正确,那么在主库可能会报 PING[ARC1]: Heartbeat failed to connect to standby 'orcl_st'. Error is 12514. 错误,导致归档无法完成。

Oracle Listener 动态注册 与 静态注册

http://blog.csdn.net/tianlesoftware/archive/2010/04/30/5543166.aspx

Tnsnames.ora 文件

ORCL_ST =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 10.85.10.2)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = orcl)

ORCL_PD =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 10.85.10.1)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = orcl)

5. 创建备库的密码文件和控制文件

SQL> alter database create standby controlfile as '/u01/control01.ctl';

-- 说明: 判断一个数据库是Primary还是Standby,就是通过控制文件来判断的。

[oracle@localhost dbs]$ orapwd file=/u01/app/oracle/product/10.2.0/db_1/dbs/orapworcl password=admin

如果已经存在,就不用创建了。 缺省情况下,win下口令文件的格式是pwdsid.ora,unix下的格式是orapwSID(大小写敏感)

6. 修改初始化参数文件

SQL> create pfile='/u01/initorcl.ora' from spfile;

在initorcl.ora 添加如下内容:

####主库参数######

*.DB_NAME ='orcl';

#--监听中配置的

*.DB_UNIQUE_NAME='orcl_pd'

#--列出DG中所有DB_UNIQUE_NAME

*.LOG_ARCHIVE_CONFIG='DG_CONFIG=(orcl_pd,orcl_st)'

*.LOG_ARCHIVE_DEST_1='LOCATION=/u01/archive VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=orcl_pd'

*.LOG_ARCHIVE_DEST_2='service=orcl_st DB_UNIQUE_NAME=orcl_st'

*.LOG_ARCHIVE_DEST_STATE_1=ENABLE

*.LOG_ARCHIVE_DEST_STATE_2=ENABLE

*.REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE

#####备库参数#######

*.FAL_SERVER=orcl_st

*.FAL_CLIENT=orcl_pd

*.standby_file_management='AUTO'

*.standby_archive_dest='/u01/archive'

#如果主备库目录不同,还需要添加:

#*.log_file_name_convert='/u02/oradata/orcl/','/u03/oradata/orcl/'

#*.db_file_name_convert='/u02/oradata/orcl/','/u03/oradata/orcl/'

-- 注意:orcl_st,orcl_pd 是在tnsnames文件中配置的

用'/u01/initorcl.ora' 这个pfile 启动数据库,并生成spfile。

SQL> shutdown immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> startup pfile='/u01/initorcl.ora';

ORACLE instance started.

Total System Global Area  167772160 bytes

Fixed Size                  1218316 bytes

Variable Size              79694068 bytes

Database Buffers           83886080 bytes

Redo Buffers                2973696 bytes

Database mounted.

Database opened.

SQL> create spfile from pfile='/u01/initorcl.ora';

File created.

二、Standby 端配置

1. 创建备库存放数据文件和后台跟踪目录, 这个目录可以和主库相同, 如果不同,就需要在主库的初始化文件中进行转换。

如:

*.log_file_name_convert='/u02/oradata/orcl/','/u03/oradata/orcl/'

时间: 2025-01-02 11:36:03

Oracle DG Linux平台物理Standby搭建实例的相关文章

Oracle DG Linux平台逻辑Standby的创建实例

oracle,平台,linux,数据库,archive,sql 操作系统:linux redhat 4.7 Oracle: 10.2.0.1 主库:orcl_pd 备库:LGDG 一.逻辑Standby创建过程 1.创建物理Standby 具体的参考: Oracle Data Guard Linux 平台 Physical Standby 搭建实例 简单的做如下几点提示: (1)初始化参数配置 初始化参数的修改并不仅仅只是在待创建的Standby数据库端创建,当前的Primary数据库甚至同一个

Oracle DG 管理影响物理Standby的主库事件

多数情况下,Primary数据库的修改会随着REDO数据传播到物理Standby数据库端并被应用,不需要在物理Standby端做额外的操作,不过根据实际配置的不同,也会有例外,有些操作不是没有被传播到Standby端,而是传播过去了,但不能正确执行,其中最常见的就是对表空间和日志文件的管理操作,下面通过实例逐一进行说明. 1.创建表空间或数据文件 初始化参数STANDBY_FILE_MANAGEMENT用来控制是否自动将Primary数据库增加表空间或数据文件的改动,传播到物理Standby数据

Oracle Data Guard创建物理Standby数据库

Oracle Data Guard创建物理Standby数据库 创建物理备库 机器名 a1 a2 IP: 192.168.1.10 192.168.1.20 Net_Name a1 a2 SID a1 a2 DB_UNIQUE_NAME a1 a2 注:主节点上创建数据库a1,备节点上只安装oracle软件不创建任何数据库; 1.配置listener.ora 主节点listener.ora: SID_LIST_LISTENER= (SID_LIST= (SID_DESC= (GLOBAL_DBN

Oracle Dataguard如何配置物理standby

尽管网上有很多Oracle Dataguard的配置教程,但不难发现,很多采用的是rman duplicate这种方法,尽管此种方法较为简便.但在某种程度上,却也误导了初学者,虽说也能配置成功,但只知其然不知其所以然,Dataguard的本质没有吃透,也不利于其维护和调优. 本配置文档基于Oracle官方文档,目的在于加深大家对于Dataguard的了解. 本配置的结果是最大性能模式下的异步传输 ,因此在参数文件中,只涉及基本的主备参数,没有考虑switchover和最大性能模式下的real t

Oracle DG 物理Standby环境搭建

Oracle Data Guard, 分逻辑Standby和物理Standby. 下面讲的是物理Standby环境的搭建步骤. 一.启用Force Logging 将Primary数据库置为Force Logging模式.通过下列语句: 查看状态: SQL> SELECT DATABASE_ROLE,FORCE_LOGGING FROM V$DATABASE; DATABASE_ROLE    FORCE_LOGGING ----------------  --------------- PRI

Oracle DG 物理Standby的创建步骤

一.创建备份 物理Standby数据库相当于Primary数据库在某个时间点的镜像复制,因此在创建物理Standby数据库之前,至少要有一份Primary数据库的完整备份. Oracle建议使用RMAN创建备份集,不过如果数据库规模不是太大,我个人更倾向于通过用户管理的方式创建备份集. 创建备份有三种方式: 1. RMAN 备份与恢复 -- 不需要shutdown 数据库 备份: $ rman target / RMAN> backup full format 'D:/FULL_%d_%T_%s

Oracle DG(Data Guard)支持异构平台说明

Oracle DG(Data Guard)支持异构平台说明  以下转自:http://blog.csdn.net/tianlesoftware/article/details/7241488 一.说明 OracleData Guard 最简单的配置是主备库的环境都一样,但是在有些情况下需要异构的配置,比如在迁移时为了减少停机时间或者零停机,可能就需要使用异构的DG 配置. 关于Oralce DataGuard 异构平台的搭建,MOS上有2篇文章专门来说明: Data Guard Support

Oracle 10g R2的DataGuard物理standby 配置

一.Oracle Data Guard 的简单介绍 DATA GUARD的最主要的功能是冗灾.当然根据配置的不同,DATA GUARD具备以下特点:高可用.性能提升.数据保护以及故障恢复等. DATA GUARD可以分为物理STANDBY和逻辑STANDBY两种.二者的最大差别在于,物理STANDBY应用的是主库的归档日志,而逻辑STANDBY应用的是主库的归档日志中提取的SQL语句.由于二者这一点的区别,决定了物理STANDBY无论从逻辑结构和物理结构都是和主库保持一致,而逻辑STANDBY则

Oracle DG如何监控主库和物理备库

1.监控途径:概括起来主要通过两个方面来进行: 2.监控恢复进度 (1)查看进程的活动状态 V$MANAGED_STANDBY视图专用于显示物理Standby数据库相关进程的当前状态,该视图中的列也很有特点,查看进程状态时,通常我们会关注PROCESS.CLIENT_PROCESS.SEQUENC#和STATUS几列,例如: SQL> SELECT PROCESS,CLIENT_PROCESS,SEQUENCE#, STATUS FROM V$MANAGED_STANDBY; PROCESS