热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

Oracle11g搭建DataGuard详细步骤(物理standby所有操作总结)

DataGuard是通过建立一个PRIMARY和STANDBY组来确立其参照关系;STANDBY一旦创建,DataGuard就会通过将主数据库(PRIMARY)的REDO传

DataGuard是通过建立一个PRIMARY和STANDBY组来确立其参照关系;STANDBY一旦创建,DataGuard就会通过将主数据库(PRIMARY)的REDO传

序言:

DataGuard是通过建立一个PRIMARY和STANDBY组来确立其参照关系;STANDBY一旦创建,DataGuard就会通过将主数据库(PRIMARY)的REDO传递给STANDBY数据库,然后在STANDBY中应用REDO实现数据库的同步。

有两种类型的STANDBY:物理STANDBY和逻辑STANDBY

物理STANDBY提供与主数据库完全一样的拷贝(块到块),数据库SCHEMA,包括索引都是一样的。它是直接应用REDO实现同步的。

逻辑STANDBY则不是这样,在逻辑STANDBY中,逻辑信息是相同的,但物理组织和数据结构可以不同,它和主库保持同步的方法是将接收的REDO转换成SQL语句,然后在STANDBY上执行SQL语句。逻辑STANDBY除灾难恢复外还有其它用途,比如用于用户进行查询和报表。

1、安装环境

在primary搭建数据库软件,建立lsnrctl监听,采用dbca搭建实例,在standby上搭建数据库软件,建立监听,但是不需要采用dbca建立实例。

如何在Linux上搭建Oracle数据库,请参考前面的文章:

在CentOS 6.4下安装Oracle 11gR2(x64)

Oracle 11gR2 在VMWare虚拟机中安装步骤

Debian 下 安装 Oracle 11g XE R2

Oracle Data Guard 重要配置参数

基于同一主机配置 Oracle 11g Data Guard

探索Oracle之11g DataGuard

Oracle Data Guard (RAC+DG) 归档删除策略及脚本

Oracle Data Guard 的角色转换

Oracle Data Guard的日志FAL gap问题

Oracle 11g Data Guard Error 16143 Heartbeat failed to connect to standby 处理方法

2、准备工作 在primary上操作
2.1、打开Forced Logging 模式
先确认primary库处于归档模式
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 362
Next log sequence to archive 364
Current log sequence 364
SQL>


强制归档
SQL> alter database force logging;

Database altered.


SQL>
确认primary库是归档模式


添加standby文件
alter database add standby logfile group 4 ('/home/oradata/powerdes/redo_dg_021.log') size 20M;
alter database add standby logfile group 5 ('/home/oradata/powerdes/redo_dg_022.log') size 20M;
alter database add standby logfile group 6 ('/home/oradata/powerdes/redo_dg_023.log') size 20M;
alter database drop standby logfile group 4;
alter database drop standby logfile group 5;
alter database drop standby logfile group 6;

查看所有redo文件列表,select * from v$logfile order by 1;
SQL> select * from v$logfile order by 1;

1 ONLINE /home/oradata/powerdes/redo03.log NO
2 ONLINE /home/oradata/powerdes/redo02.log NO
3 ONLINE /home/oradata/powerdes/redo01.log NO
4 STANDBY /home/oradata/powerdes/redo_dg_021.log NO
5 STANDBY /home/oradata/powerdes/redo_dg_022.log NO
6 STANDBY /home/oradata/powerdes/redo_dg_023.log NO

6 rows selected.

SQL>


2.3 准备参数文件
2.3.1 生成pfile
create pfile from spfile;
shutdown immediate


2.3.2 修改pfile
cp $ORACLE_HOME/dbs/initpowerdes.ora $ORACLE_HOME/dbs/initpowerdes.ora.bak
vim $ORACLE_HOME/dbs/initpowerdes.ora
*.db_unique_name=pdunq
*.diagnostic_dest='/oracle/app/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=powerdesXDB)'
*.fal_client='pdunq'
*.fal_server='pdunq_dg'
*.standby_file_management='AUTO'
*.db_file_name_cOnvert='/home/oradata/powerdes','/home/oradata/pwerdes'
*.log_file_name_cOnvert='/home/oradata/powerdes','/home/oradata/powerdes'
*.log_archive_cOnfig='DG_COnFIG=(pdunq,pdunq_dg)'
*.log_archive_dest_2='SERVICE=pdunq_dg lgwr sync affirm VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=pdunq_dg'
*.log_archive_dest_state_2='ENABLE'

2.3.3 生成spfile
create spfile from pfile;
startup #这里可以启动也可以不启动,这里不启动,后面就要记得startup;让新的参数文件生效


2.4 修改监听文件
[oracle@powerlong4 admin]$ vim listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /oracle/app/oracle/product/11.2.0/dbhome_1)
(PROGRAM = extproc)
)
(SID_DESC =
(SID_NAME = powerdes)
(ORACLE_HOME = /oracle/app/oracle/product/11.2.0/dbhome_1)
)
)


LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.121.217)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)
)


ADR_BASE_LISTENER = /oracle/app/oracle
INBOUND_CONNECT_TIMEOUT_listener=10


2.5,修改tns配置文件
[oracle@powerlong4 admin]$ vim tnsnames.ora
PD =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.121.217)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = pdunq)
)
)

推荐阅读
author-avatar
mobiledu2502897207
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有