搭建11gRAC-----11g单机—ADG
1.主库oracle11grac
主机名 ip 实例名
rac1 192.168.88.50 orcl1
rac2 192.168.88.51 orcl2
备库单机oracle11g
主机名 ip 实例名
node1 192.168.88.30 orcldg
环境介绍上述主备库归档日志以开启:
主库归档路径:+datadg/arch
备库归档路径:/arch
主库数据文件在asm
备库数据文件在本地文件系统
基础环境,如主集群数据库状态正常,备库单机数据库也正常。
2.开启主库强制日志模式
先查看是否开启:
select name,log_mode,force_logging from v$database;
开启主库强制日志模式:
alter database force logging;
3.配置主库/备库参数
主库:
alter system set db_unique_name= orcl scope=spfile;
alter system set LOG_ARCHIVE_CONFIG=‘DG_CONFIG=( orcl, orcldg)’;
alter system set log_archive_dest_1=‘location=+DATADG/arch VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME= orcl’ scope=spfile;####log_archive_dest_1设置根据自己归档路径修改,设置不对,数据库会报错
ALTER SYSTEM SET LOG_ARCHIVE_DEST_2=‘SERVICE=orcldg LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=orcldg’;
alter system set LOG_ARCHIVE_DEST_STATE_1=ENABLE;
alter system set LOG_ARCHIVE_DEST_STATE_2=ENABLE;
alter system set FAL_SERVER= orcldg;
alter system set FAL_CLIENT= orcl;
alter system set standby_file_management=auto;
alter system set db_file_name_convert= ‘/home/u01/app/oracle/oradata/orcldg’,’/home/u01/app/oracle/oradata/orcl’ scope=spfile;
alter system set log_file_name_convert= ‘/home/u01/app/oracle/oradata/orcldg’,’/home/u01/app/oracle/oradata/orcl’ scope=spfile;
备库:
alter system set db_unique_name= orcldg scope=spfile;
alter system set LOG_ARCHIVE_CONFIG=‘DG_CONFIG=( orcldg, orcl)’;
alter system set log_archive_dest_1=‘location=/arch valid_for=(all_logfiles,all_roles) db_unique_name=orcldg’ scope=spfile;
ALTER SYSTEM SET LOG_ARCHIVE_DEST_2=‘SERVICE=orcl LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=orcl’;
alter system set LOG_ARCHIVE_DEST_STATE_1=ENABLE;
alter system set LOG_ARCHIVE_DEST_STATE_2=ENABLE;
alter system set log_archive_format=’%t_%s_%r.dbf’;
alter system set log_archive_max_processes=10;
alter system set db_file_name_convert=’/home/u01/app/oracle/oradata/orcl’,’/home/u01/app/oracle/oradata/orcldg’ scope=spfile;
alter system set log_file_name_convert=’/home/u01/app/oracle/oradata/orcl’,’/home/u01/app/oracle/oradata/orcldg’ scope=spfile;
3.设置备库密码文件
主库操作:
su - oracle
[oracle@rac1 ~]$ cd /home/u01/app/oracle/product/11.2.0/db_1/dbs/
[oracle@rac1 dbs]$ ls
hc_orcl1.dat init.ora initorcl1.ora orapworcl1 snapcf_orcl1.f
[oracle@rac1 dbs]$ scp orapworcl1 oracle@192.168.88.30:/home/u01/app/oracle/product/11.2.0/db_1/dbs/orapworcl1
4.主备库添加网络名
主库操作:节点1和节点都操作
[oracle@rac1 admin]$ vi /home/u01/app/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
)
)
orcldg =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.88.30)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcldg)
)
)
orcl =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.88.51)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
orcl =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.88.50)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
[oracle@rac2 ~]$ vi /home/u01/app/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
)
orcldg =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.88.30)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcldg)
)
)
orcl =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.88.51)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
orcl =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.88.50)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
备库操作:
[oracle@node1 ~]$ vi /home/u01/app/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
orcldg =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.88.30)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcldg)
)
)
orcl =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.88.51)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
orcl =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.88.50)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
然后主备库测试tnsping是否可以
主库:tnsping orcldg
备库:tnsping orcl
5.备库添加监听静态注册
[oracle@node1 admin]$ vi listener.ora
listener.ora Network Configuration File: /home/u01/app/oracle/product/11.2.0/db_1/network/admin/listener.ora
Generated by Oracle configuration tools.
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = node1)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
ADR_BASE_LISTENER = /home/u01/app/oracle
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /home/u01/app/oracle/product/11.2.0/db_1)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = orcldg)
(ORACLE_HOME = /home/u01/app/oracle/product/11.2.0/db_1)
(SID_NAME = orcldg)
)
)
------lsnrctl status
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME =orcldg)
(ORACLE_HOME = /home/u01/app/oracle/product/11.2.0/db_1)
(SID_NAME = orcldg)
)
)
上述参数以配置完成,下面就是数据库初始化:
6.利用rman的duplicate来备份
在备库操作:
备库要启动到nomout状态下
rman target sys/123456@orcl auxiliary sys/123456@orcldg
–报错如下:
[oracle@node1 admin]$ rman target sys/123456@orcl auxiliary sys/123456@orcldg
Recovery Manager: Release 11.2.0.4.0 - Production on Wed Dec 16 01:24:29 2020
Copyright © 1982, 2011, Oracle and/or its affiliates. All rights reserved.
connected to target database: ORCL (DBID=1586871081)
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-00554: initialization of internal recovery manager package failed
RMAN-04006: error from auxiliary database: ORA-12514: TNS:listener does not currently know of service requested in connect descriptor
第一种方式行不通 那就用别的方式进行备份数据库导入到备库
备份主库:
rman target /
configure channel device type disk format ‘/home/oracle/rmanbk/%d_%I_%s_%p.bkp’;
backup as compressed backupset database include current controlfile for standby plus archivelog;
将备份传输至备库
[oracle@up rmanbk]$ scp ORCL_1586871081_* 192.168.88.50:/home/oracle/rmanbk/
在备库恢复控制文件
rman target /
RMAN> restore standby controlfile from ‘/home/oracle/rmanbk/ORCL_1586871081_8_1.bkp’
2> ;
Starting restore at 2020-12-15 23:53:08
using channel ORA_DISK_1
channel ORA_DISK_1: restoring control file
channel ORA_DISK_1: restore complete, elapsed time: 00:00:03
output file name=/home/u01/app/oracle/oradata/orcldg/control01.ctl
output file name=/home/u01/app/oracle/oradata/orcldg/control02.ctl
Finished restore at 2020-12-15 23:53:11
将数据库 Mount
sql ‘alter database mount’; --执行报错
sql statement: alter database mount
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03009: failure of sql command on default channel at 12/15/2020 23:54:13
RMAN-11003: failure during parse/execution of SQL statement: alter database mount
ORA-01103: database name ‘ORCL’ in control file is not ‘ORCLDG’
请各位大佬从我描述的情况中给指点指点看看哪里有问题
墨值悬赏

评论
