oracle 11gR2配置ADG (搭建oracle dataguard)

本文记录了Oracle 11gR2配置ADG(Data Guard)的过程,包括搭建环境、解决swap空间不足和依赖包问题、配置监听、tnsnames、ADG参数、数据同步等步骤,以及遇到的问题和解决方案,帮助读者深入理解Oracle数据库运行机制。

感悟

1.从事数据库软件的使用维护工作,看起来似乎很简单,输入几条常用的命令即可解决问题,但是问题在于当系统出现了异常报错时,就变得手足无措不敢进行新的操作,甚至硬着头皮操作,越搞越糟。这些现象说明,我们对软件的运行原理了解的不多,知其然,但不知其所以然。平时看再多的文本资料,不如动手多去实践探索原理本质更有效。

2. 搭建vmware workstation练习环境要舍得投资升级电脑配置。之前,碍于电脑配置低,运行速度慢,重启虚拟机都得等好几分钟,严重影响练习时的效率和心情,对个人来说是一种摧残。一直没有做过oracle 11gR2配置ADG (dataguard)的实验。所以,对ADG一直都是敬而远之。

3.经过对oracle 11gR2配置ADG (dataguard)的过程,自己对oracle运行机制,pfile,spfile,tnsnames,listener等文件的作用更加熟悉了。不再像以前那样照猫画虎、照本宣科了。

配置过程

参考帖子数据库之Oralce ADG 搭建使用(搭建流程、个人理解、出现问题、解决方案)_大&迈的博客-优快云博客_数据库adg是什么意思

基础环境: 

磁盘空间:30G

操作系统:Asianux3 SP3 64位

数据库:oracle 11.2.0.3.0 - 64bit 

主库:主机名test1,数据库实例名testdb,IP 10.0.0.7

备库:主机名test2,数据库实例名testdb,IP 10.0.0.8

终端软件:MobaXterm 个人认为该软件很好用,理由是当登陆ssh时,在MobaXterm左侧显示一个sftp会话框,方便将本地的安装包等文件上传到linux的相应目录下。勾选左侧底部的“跟随终端文件夹”即可实现,在linux里cd到某个目录时,sftp会话窗同步切换到相应目录下。

安装oracle数据库时遇到的问题:

1. 检测发现swap空间不足

解决办法:

swap扩容:

dd if=/dev/zero of=/ora/swap bs=1024 count=1500000(约1.5G)

mkswap /ora/swap

swapon /ora/swap

 free -m

vi /etc/fstab

插入一行:/ora/swap       swap    swap default 0  0

2.检测发现缺少pdksh-5.2.14包

解决办法:rpm -i --force --nodeps pdksh-5.2.14-24.x86_64.rpm

说明:执行rpm -ivh pdksh-5.2.14-24.x86_64.rpm安装失败,只能强行安装。

一、确保主备数据库运行在日志归档模式下

SQL> archive log list;
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            /oracle/app/oracle/arch
Oldest online log sequence     39
Next log sequence
Oracle 11gR2 RAC环境中部署Active Data Guard(ADG)是一项关键任务,旨在提供高可用性、数据保护以及灾难恢复能力。ADG通过物理备用数据库(Physical Standby Database)实现主数据库的实时只读访问和故障转移支持。以下是Oracle 11gR2 RAC环境下ADG部署的关键步骤和技术要点。 ### 3.1 环境准备 在部署ADG之前,必须确保主数据库和备用数据库的环境配置满足以下要求: - **操作系统一致性**:主库和备用库应运行相同的操作系统版本和补丁级别,确保兼容性。 - **数据库版本一致性**:主库和备用库必须使用相同的Oracle数据库版本,且都启用Active Data Guard选项。 - **网络配置**:配置专用网络用于日志传输(Data Guard Redo Apply),并确保主库与备用库之间的通信畅通无阻。 - **存储配置**:确保主库和备用库的存储结构一致,包括数据文件路径、归档日志路径等。 - **RAC环境配置**:主库为RAC环境时,备用库也应配置为RAC环境,以保持拓扑结构一致,避免单点故障。 ### 3.2数据库配置 在主数据库上启用ADG需要进行以下配置: - **启用强制日志模式(Force Logging)**: ```sql ALTER DATABASE FORCE LOGGING; ``` 该操作确保所有DML和DDL操作都被记录在重做日志中,以便在备用数据库上正确应用。 - **配置归档日志模式**: ```sql SHUTDOWN IMMEDIATE; STARTUP MOUNT; ALTER DATABASE ARCHIVELOG; ALTER DATABASE OPEN; ``` 确保主库运行在归档日志模式下,以便生成归档日志用于备用库的数据同步。 - **配置Standby Redo Logs**: 在主库上创建与在线Redo Log组数量和大小一致的Standby Redo Logs,以支持实时应用(Real-Time Query)功能。 - **设置Data Guard Broker**(可选): Data Guard Broker简化了ADG的管理和监控,可以通过配置`DG_BROKER_START=TRUE`并使用`dgmgrl`命令行工具进行管理。 ### 3.3 备用数据库创建 备用数据库的创建通常通过RMAN进行复制: - **使用RMAN创建物理备用数据库**: ```bash rman target sys/password@primary auxiliary sys/password@standby DUPLICATE TARGET DATABASE FOR STANDBY FROM ACTIVE DATABASE NOFILENAMECHECK; ``` 此命令将主库的结构复制到备用库,并跳过文件名检查(适用于不同主机名的环境)。 - **手动配置Standby Redo Logs**(如果未自动创建): ```sql ALTER DATABASE ADD STANDBY LOGFILE GROUP 4 ('+DATA') SIZE 500M; ``` - **启用Managed Recovery Process (MRP)**: ```sql ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT; ``` 该命令启动MRP进程,用于自动应用从主库接收到的Redo数据。 ### 3.4 配置日志传输服务 在主库上配置`LOG_ARCHIVE_DEST_2`参数以启用日志传输: ```sql ALTER SYSTEM SET LOG_ARCHIVE_DEST_2='SERVICE=standby_db ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=standby'; ``` 此配置指定备用数据库的服务名,并启用异步日志传输模式。如果需要同步模式,可将`ASYNC`替换为`SYNC`,并结合`AFFIRM`或`NOAFFIRM`参数控制写入确认行为。 ### 3.5 启用实时查询(Real-Time Query) 启用ADG的实时查询功能,允许在备用数据库上执行只读查询: ```sql ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL; ALTER DATABASE OPEN READ ONLY; ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT USING CURRENT LOGFILE; ``` 上述命令将备用数据库切换为只读模式,并继续应用Redo数据,从而实现接近实时的数据访问。 ### 3.6 故障切换与切换测试 定期进行故障切换测试是确保ADG配置正确性的关键步骤。可以通过以下命令进行切换: - **切换到备用数据库**(Switchover): ```sql ALTER DATABASE COMMIT TO SWITCHOVER TO PHYSICAL STANDBY; ``` 在主库执行该命令后,原主库将切换为备用角色,原备用库成为新的主库。 - **回切到原主库**: 在新主库上执行类似命令,将角色切换回原主库。 ### 3.7 监控与维护 建议使用以下工具和视图进行监控: - **V$ARCHIVED_LOG**:查看归档日志的传输和应用状态。 - **V$MANAGED_STANDBY**:监控MRP进程的状态。 - **Data Guard Broker**:通过`dgmgrl`命令行工具或OEM进行图形化管理。 ---
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值