同一环境下新建Standby RAC库

需求:在同一个环境下新建Standby RAC库,即和Primary RAC在相同的磁盘组。
说明:生产环境一般不建议这样配置DG,因为存储层面是相同磁盘组,灾备的实际意义不大。我这里是用作读写分离。

基本信息:
db_name: jyzhao
Primary RAC db_unique_name:jyzhao
Standby RAC db_unique_name:jyzhaodg
Standby RAC instance_name: jyzhaodg1, jyzhaodg2
版本:GI 11.2.0.4 + DB 11.2.0.4

第一章 准备工作

1.1 ASM存储

1.2 配置tnsnames.ora

1.3 密码文件

第二章 源数据库备份

第三章 参数文件

3.1 修改主库参数文件

3.2 修改Standby RAC 参数

3.3 在ASM中创建standby的spfile

3.4 Standby RAC启动到nomount

第五章 rman恢复数据库
第六章 备库开启日志应用
第七章 创建standby log
第八章 检查资源状态

第一章 准备工作 1.1 ASM存储

确认RAC Standby存储是在和RAC Primary相同的ASM磁盘组内(PS:灾备效果不明显),创建RAC Standby存储目录(根据db_unique_name)

mkdir +DATA/JYZHAODG mkdir +FRA/JYZHAODG 1.2 配置tnsnames.ora

cd $Oracle_HOME/network/admin/
cat tnsnames.ora
添加主库备库的连接信息(所有节点):

JYZHAO = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = oradb-scan)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = jyzhao) ) ) jyzhaodg = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = oradb-scan)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = jyzhaodg) ) ) 1.3 密码文件

节点1:

export ORACLE_SID=jyzhaodg1 密码文件; cd $ORACLE_HOME/dbs orapwd file=orapwjyzhaodg1 password=oracle entries=5 或者直接copy之前的密码文件,然后mv重命名: cp orapwjyzhao1 orapwjyzhaodg1

节点2:

export ORACLE_SID=jyzhaodg2 密码文件; cd $ORACLE_HOME/dbs orapwd file=orapwjyzhaodg2 password=oracle entries=5 或者直接copy之前的密码文件,然后mv重命名: cp orapwjyzhao2 orapwjyzhaodg2

最后测试相互连接可用

sqlplus sys/oracle@jyzhao as sysdba sqlplus sys/oracle@jyzhaodg as sysdba 第二章 源数据库备份

vi backup.sh
备份脚本如下:

rman target / <<EOF run { allocate channel c1 device type disk; allocate channel c2 device type disk; backup as compressed backupset database filesperset 1 format '/u01/orabak/salehrdb_%d_%T_%s.bak'; backup current controlfile format '/u01/orabak/control.bak'; release channel c1; release channel c2; } EOF

后台执行备份任务:

nohup sh backup.sh &

注意:如果使用backup as copy database format方案,就不用再备份到磁盘后再恢复了,可以节省时间。

backup as copy 方案备份脚本 backupcp.sh内容如下:

rman target / <<EOF run { allocate channel c1 device type disk; allocate channel c2 device type disk; backup as copy database format '+DATA/JYZHAODG/DATAFILE/%u.dbf'; release channel c1; release channel c2; } EOF

注意:这种方式,路径包含的目录需手动创建。

mkdir +DATA/JYZHAODG/DATAFILE 第三章 参数文件 3.1 修改主库参数文件

确认当前环境ORACLE_SID:

echo $ORACLE_SID export ORACLE_SID=jyzhao1

根据spfile文件创建pfile:
create pfile='/tmp/pfile.ora' from spfile;

Primary RAC 添加参数

--为不停止primary RAC,所以尽可能动态修改参数: show parameter log_archive_config show parameter db_file_name_convert show parameter log_file_name_convert show parameter fal_client show parameter fal_server show parameter log_archive_dest_3 alter system set log_archive_config='dg_config=(jyzhao,jyzhaodg)'; alter system set db_file_name_convert='+DATA/jyzhaodg','+DATA/jyzhao' scope=spfile; alter system set log_file_name_convert='+DATA/jyzhaodg','+DATA/jyzhao' scope=spfile; alter system set fal_client='jyzhao'; alter system set fal_server='jyzhaodg'; alter system set log_archive_dest_3='service=jyzhaodg valid_for=(online_logfiles,primary_role) db_unique_name=jyzhaodg'; --暂时defer传输链路,防止此时主库告警生成相关错误 SQL> alter system set log_archive_dest_state_3=defer; 3.2 修改Standby RAC 参数

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/bda33f2a29ed4a9a6e9dfcc32fc104bd.html