当前位置:   article > 正文

Oracle12创建RAC,Oracle 12C Rac到Rac搭建ADG

oracle12c rac 切换adg

1、环境介绍

搭建一套ADG灾备环境。主库环境为12.1.2.0 RAC,备库同主库,软件补丁均已安装。

2、配置步骤

2.1 归档

select log_mode from v$database; #####是否为归档模式

alter database force logging; #####强制归档

2.2 主库standby log

alter database add standby logfile thread 1 group 5 ('+DATADG') size 2048M;

alter database add standby logfile thread 1 group 6 ('+DATADG') size 2048M;

alter database add standby logfile thread 1 group 7 ('+DATADG') size 2048M;

alter database add standby logfile thread 1 group 8 ('+DATADG') size 2048M;

alter database add standby logfile thread 1 group 9 ('+DATADG') size 2048M;

alter database add standby logfile thread 1 group 10 ('+DATADG') size 2048M;

alter database add standby logfile thread 2 group 11 ('+DATADG') size 2048M;

alter database add standby logfile thread 2 group 12 ('+DATADG') size 2048M;

alter database add standby logfile thread 2 group 13 ('+DATADG') size 2048M;

alter database add standby logfile thread 2 group 14 ('+DATADG') size 2048M;

alter database add standby logfile thread 2 group 15 ('+DATADG') size 2048M;

alter database add standby logfile thread 2 group 16 ('+DATADG') size 2048M;

3、文件

3.1 密码文件

拷贝主库密码文件到备库,最开始放在$ORACLE_HOME/dbs目录下,后续配置完成后,需要将密码文件存放在ASM磁盘组中并进行改名。

scp orapwbmacdb IP: $ORACLE_HOME/dbs1

ASMCMD> pwcopy /u01/app/oracle/product/12.1.0/dbhome_1/dbs/orapwbmacdb1 +datadg/bmacdbdg/password/orapwbmacdb

copying /u01/app/oracle/product/12.1.0/dbhome_1/dbs/orapwbmacdb1 -> +datadg/bmacdbdg/password/orapwbmacdb

3.2 参数文件

拷贝主库参数文件到备库,放在$ORACLE_HOME/dbs目录下,恢复完成后,需要将参数文件存放在ASM磁盘组中,并通过pfile指定其位置。参数文件内容如下:

*.audit_file_dest='/u01/app/oracle/admin/bmacdb/adump'

*.control_files='+DATADG/BMACDB/control01.ctl','+DATADG/BMACDB/control02.ctl'

*.db_file_name_convert='+DATADG/BMACDB/DATAFILE/','+DATADG/BMACDB/DATAFILE/','+SSDDG/BMACDB/DATAFILE/','+DATADG/BMACDB/DATAFILE/','+DATADG/bmacdb/','+DATADG/BMACDB/DATAFILE/'

*.db_unique_name='bmacdbdg'

*.log_archive_config='DG_CONFIG=(bmacdb,bmacdbdg)'

*.log_archive_dest_1='LOCATION=+ARCHDG VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=bmacdbdg'

*.log_archive_dest_2='SERVICE=BMACDB1 ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=BMACDB'

*.log_file_name_convert='+SSDDG/bmacdb/','+LOGDG/BMACDB/ONLINELOG/'

*.fal_server='BMACDB'

以上参数时我们需要修改的地方。

3.3 目录结构

mkdir -p /u01/app/oracle/admin/bmacdb/adump

ASM:

+DATADG/BMACDB/DATAFILE

+LOGDG/BMACDB/ONLINELOG

创建完目录结构后,启动数据库到nomount状态。

startup nomount

3.4 配置监听

在配置ADG开始阶段,需要在备库静态注册监听,搭建完成后,可以将静态注册信息删掉。静态注册信息如下:/u01/app/12.1.0/grid/network/admin/listener.ora

SID_LIST_LISTENER =

(SID_LIST =

(SID_DESC =

(GLOBAL_DBNAME = bmacdbdg)

(ORACLE_HOME = /u01/app/oracle/product/12.1.0/dbhome_1)

(SID_NAME = bmacdb1)

)

)

LISTENER =

(DESCRIPTION_LIST =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = IPC)(KEY = LISTENER))

)

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = IP地址)(PORT = 1521))

)

)

配置完监听后启动监听,静态监听信息如下:

Service "bmacdbdg" has 1 instance(s).

Instance "bmacdb1", status UNKNOWN, has 1 handler(s) for this service...

主库连接串配置

主库tnsnames.ora新增到备库的连接串,并且在RAC两个节点同时新增:

BMACDBDG =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = IP地址)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = bmacdbdg)

)

)

配置完成后,进行连通性测试:

sqlplus sys/password@BMACDBDG as sysdba

SQL*Plus: Release 12.1.0.2.0 Production on Tue Jun 18 14:28:16 2019

Copyright (c) 1982, 2014, Oracle. All rights reserved.

备库连接串配置

备库tnsnames.ora新增到主库的连接串,并且在RAC两个节点同时新增:

BMACDB =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = IP地址)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = bmacdb)

)

)

配置完成后,进行连通性测试:

sqlplus sys/password@BMACDB as sysdba

SQL*Plus: Release 12.1.0.2.0 Production on Tue Jun 18 14:29:29 2019

Copyright (c) 1982, 2014, Oracle. All rights reserved.

4、恢复备库

source /home/oracle/.profile

rman target sys/password@BMACDB auxiliary sys/password@BMACDBDG <

run

{

allocate channel cl1 type disk;

allocate auxiliary channel c1 type disk;

duplicate target database for standby from active database nofilenamecheck;

release channel c1;

release channel cl1;

}

EOF

给脚本授予执行权限并执行脚本:

chmod +x dg.sh

nohup ./dg.sh &

5、修改主库参数

alter system set log_archive_config='dg_config=(bmacdb,bmacadg,bmacdg,bmacdbdg)';

alter system set log_archive_dest_4='service=BMACDBDG async valid_for=(online_logfiles,primary_role) db_unique_name=bmacdbdg';

6、备库spfile

SQL> create spfile ='+datadg/bmacdbdg/spfilebmacdb.ora' from pfile;

File created.

oracle@bmacdrdb1:/home/oracle>cd $ORACLE_HOME/dbs

oracle@bmacdrdb1:/u01/app/oracle/product/12.1.0/dbhome_1/dbs>cat initbmacdb1.ora

spfile ='+datadg/bmacdbdg/spfilebmacdb.ora'

7、备库RAC添加资源

srvctl add database -db bmacdbdg -dbname bmacdb -oraclehome /u01/app/oracle/product/12.1.0/dbhome_1 -dbtype RAC -role PHYSICAL_STANDBY

srvctl add instance -db bmacdbdg -instance bmacdb1 -node bmacdrdb1

srvctl add instance -db bmacdbdg -instance bmacdb2 -node bmacdrdb2

srvctl modify database -db bmacdbdg -spfile '+datadg/bmacdbdg/spfilebmacdb.ora' -pwfile '+datadg/bmacdbdg/password/orapwbmacdb'

srvctl modify database -db bmacdbdg -diskgroup DATADG,LOGDG

备库配置信息:

oracle@bmacdrdb1:/home/oracle>srvctl config database -d bmacdbdg

Database unique name: bmacdbdg

Database name: bmacdb

Oracle home: /u01/app/oracle/product/12.1.0/dbhome_1

Oracle user: oracle

Spfile: +datadg/bmacdbdg/spfilebmacdb.ora

Password file: +datadg/bmacdbdg/password/orapwbmacdb

Domain:

Start options: open

Stop options: immediate

Database role: PHYSICAL_STANDBY

Management policy: AUTOMATIC

Server pools:

Disk Groups: DATADG,LOGDG

Mount point paths:

Services:

Type: RAC

Start concurrency:

Stop concurrency:

OSDBA group: dba

OSOPER group: oper

Database instances: bmacdb1,bmacdb2

Configured nodes: bmacdrdb1,bmacdrdb2

Database is administrator managed

8、应用日志

alter database recover managed standby database disconnect from session;

alter database recover managed standby database cancel;

alter database open;

alter database recover managed standby database using current logfile disconnect;

select open_Mode,DATABASE_ROLE from v$database;

OPEN_MODE DATABASE_ROLE

-------------------- ----------------

READ ONLY WITH APPLY PHYSICAL STANDBY

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号