使用NBU备份集恢复数据库(RAC-RAC)
### 使用NBU备份集恢复数据库(RAC-RAC) #### 配置环境介绍 本案例涉及的是一个全新的RAC环境的构建与恢复过程,该环境中并没有安装任何实例,因此被称为目标端。目标端的配置信息如下: - **Oracle版本**:11.2.0.4 - **SID**:RAC1、RAC2 - **恢复数据来源**:TMS生产库的备份数据,此数据源称为源端。 #### 在新环境安装NBU客户端 在目标端安装NBU客户端是实现数据恢复的关键步骤之一。具体操作可参照文档《01-隆基硅NBU实施文档.docx》。以下是简要步骤: 1. **执行oracle_link命令**:在客户端的`oracle`账户下执行`oracle_link`命令,用于建立NBU与Oracle的tape库之间的链接。 ```bash $/usr/openv/netbackup/bin/oracle_link ``` 2. **查看备份集**:通过`bplist`命令检查在需要恢复的客户端上的Oracle备份集。 ```bash ./bplist-Ctmsdb2.longi.com-t4-R-l/ ``` 其中`tmsdb2.longi.com`是源端主机名。 3. **修改用户属性**:确保目标端的Oracle用户的属组ID与源端保持一致。如果不同,则需通过以下命令进行调整: ```bash groupmod -g 1031 dba usermod -u 1106 oracle ``` 接下来,需要更改文件的属主和属组,确保与新的UID/GID一致: ```bash find / -user 1101 -exec chown oracle{} \; find / -group 1000 -exec chgrp dba{} \; ``` #### 使用spfile创建pfile文件 为了便于后续的数据库恢复操作,需要先使用源端的spfile创建一个新的pfile文件: ```sql SQL> create pfile='/tmp/tms_pfile.ora' from spfile; ``` 然后,需要修改目标端两个节点的Oracle环境变量。 #### 创建必要的目录 1. **创建目录**:在所有节点上,创建必要的目录结构来存放数据库的各种文件。 ```bash [oracle@rac1 ~]$ mkdir -p /u01/app/oracle/admin/TMSPROD/adump ``` 使用`grid`用户在共享设备上创建必要的目录: ```bash ASMCMD> mkdir TMSPROD ASMCMD> cd TMSPROD ASMCMD> mkdir TEMPFILE DATAFILE ONLINELOG PARAMETERFILE controlfile ``` 2. **创建口令文件**:在每个节点上创建口令文件。 ```bash [oracle@rac1 ~]$ orapwd file=$ORACLE_HOME/dbs/orapw$ORACLE_SID password=oracle force=y [oracle@rac2 ~]$ orapwd file=$ORACLE_HOME/dbs/orapw$ORACLE_SID password=oracle force=y ``` #### 用源端pfile创建目标端数据库spfile 1. **调整pfile文件**:根据目标端的实际内存情况调整pfile文件中的参数设置。 2. **创建spfile**:在共享设备上创建spfile,并指定路径。 ```sql SQL> create spfile='+DATA/TMSPROD/spfileTMSPROD.ora' from pfile='/tmp/tms_pfile.ora'; ``` 3. **创建指向spfile的pfile**:在所有节点上创建pfile内容,使其指向共享设备上的spfile文件。 ```bash vi /u01/app/oracle/product/11.2.0/db_1/dbs/initTMSPROD1.ora SPFILE='+DATA/TMSPROD/spfileTMSPROD.ora' ``` #### 还原控制文件 1. **启动数据库到nomount状态**。 2. **恢复控制文件**:使用RMAN工具进行控制文件的恢复。 ```sql run { allocate channel c1 TYPE SBT_TAPE; SEND 'NB_ORA_SERV=LONGI-XA-NBU,NB_ORA_CLIENT=tmsdb2.longi.com'; restore controlfile from '/c-4178200174-20180621-02'; release channel c1; } ``` 完成控制文件的恢复后,启动数据库至mount状态: ```sql RMAN> alter database mount; ``` #### 还原数据文件 1. **设置新的数据文件路径**:使用`setnewname`命令重新指定数据文件的位置。 ```sql set newname for datafile '...' to '+DATA'; ``` 2. **数据文件还原**:分配通道并执行数据文件的还原。 ```sql run { allocate channel c1 type SBT_TAPE; allocate channel c2 type SBT_TAPE; ... } ``` 数据文件的还原操作需要依据实际情况进行调整,包括但不限于数据文件的数量、大小以及具体的存储位置等。 通过以上步骤,可以有效地完成从源端到目标端的数据库恢复工作,确保数据库的完整性和可用性。这种恢复方式不仅限于简单的数据恢复,还涵盖了整个数据库环境的重建,确保了目标端能够完全替代原有的源端数据库系统。
剩余7页未读,继续阅读
- 粉丝: 8
- 资源: 25
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助