oracle19c rac 本地搭建adg

oracle19c rac 本地搭建adg

注意点:

本地搭建和异地搭建,主要需注意pdb的访问问题,本地需要将备库绑定到不同端口的监听,避免无法连接pdb(关键第4步)

(也可以不修改端口,修改tnsnames.ora指定实例即可,参看https://blog.csdn.net/jycjyc/article/details/107738737

存在问题:这种情况下不能通过scan-ip的方式连接,只能通过两个vip做连接。除非使用两个不同scan网络。

https://dbamarco.wordpress.com/2015/04/15/using-a-separate-network-for-dataguard-in-12c-rac/

1.启用归档:

[root@rac1 ~]# su - oracle

Last login: Thu Jul 30 13:51:20 CST 2020 on pts/0

[oracle@rac1 ~]$ sqlplus / as sysdba

 

SQL*Plus: Release 19.0.0.0.0 - Production on Thu Jul 30 13:53:41 2020

Version 19.8.0.0.0

 

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

 

 

Connected to:

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

Version 19.8.0.0.0

 

SQL> show parameter name;

 

NAME                                 TYPE        VALUE

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

cdb_cluster_name                     string

cell_offloadgroup_name               string

db_file_name_convert                 string

db_name                              string      orcl

db_unique_name                       string      orcl

global_names                         boolean     FALSE

instance_name                        string      orcl1

lock_name_space                      string

log_file_name_convert                string

pdb_file_name_convert                string

processor_group_name                 string

 

NAME                                 TYPE        VALUE

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

service_names                        string      orcl

SQL>  select force_logging from v$database;

 

FORCE_LOGGING

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

NO

 

SQL> alter database force logging;

 

Database altered.

 

SQL>

SQL> select force_logging from v$database;

 

FORCE_LOGGING

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

YES

 

SQL> alter system set db_recovery_file_dest='+DATA' scope=spfile sid='*';

 

System altered.

 

SQL> alter system set db_recovery_file_dest_size = 20G scope=spfile sid='*';

 

System altered.

 

SQL> shutdown immediate

ORA-01109: database not open

 

 

Database dismounted.

ORACLE instance shut down.

SQL> startup mount

ORACLE instance started.

 

Total System Global Area 4999610048 bytes

Fixed Size                  9146048 bytes

Variable Size            1291845632 bytes

Database Buffers         3690987520 bytes

Redo Buffers                7630848 bytes

Database mounted.

SQL> archive log list;

Database log mode              Archive Mode

Automatic archival             Enabled

Archive destination            USE_DB_RECOVERY_FILE_DEST

Oldest online log sequence     21

Next log sequence to archive   22

Current log sequence           22

SQL> alter database open;

 

Database altered.

 

SQL> show parameter recover;

 

NAME                                 TYPE        VALUE

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

db_recovery_file_dest                string      +DATA

db_recovery_file_dest_size           big integer 20G

db_unrecoverable_scn_tracking        boolean     TRUE

recovery_parallelism                 integer     0

remote_recovery_file_dest            string

SQL> exit

主备配置归档删除策略,避免归档未应用被删除的情况:

CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON ALL STANDBY;

2.增加standby_log

Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

Version 19.8.0.0.0

[oracle@rac1 ~]$ srvctl stop database -d orcl

[oracle@rac1 ~]$ srvctl start database -d orcl

[oracle@rac1 ~]$ sqlplus / as sysdba

 

SQL*Plus: Release 19.0.0.0.0 - Production on Thu Jul 30 14:30:52 2020

Version 19.8.0.0.0

 

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

 

 

Connected to:

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

Version 19.8.0.0.0

 

SQL> archive log list;

Database log mode              Archive Mode

Automatic archival             Enabled

Archive destination            USE_DB_RECOVERY_FILE_DEST

Oldest online log sequence     21

Next log sequence to archive   22

Current log sequence           22

SQL> set line 160   

SQL> set wrap off

SQL> select * from v$Log;

    GROUP#    THREAD#  SEQUENCE#      BYTES  BLOCKSIZE    MEMBERS ARC STATUS           FIRST_CHANGE# FIRST_TIME          NEXT_CHANGE# NEXT_TIME

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

         1          1         21  209715200        512          1 YES INACTIVE               3782017 2020-07-29 12:22:29      3964886 2020-07-30 13:51:03

         2          1         22  209715200        512          1 NO  CURRENT                3964886 2020-07-30 13:51:03   9.2954E+18

         3          2          9  209715200        512          1 YES INACTIVE               3964887 2020-07-30 13:51:04      3985738 2020-07-30 13:59:05

         4          2         10  209715200        512          1 NO  CURRENT                3987920 2020-07-30 14:28:03   9.2954E+18 2020-07-30 14:28:03

 

SQL> select * from v$standby_log;

no rows selected

 

SQL>  alter database add standby logfile thread 1 group 5 ('+DATA') size 200M;

 

Database altered.

 

SQL>  alter database add standby logfile thread 1 group 6 ('+DATA') size 200M;

 

Database altered.

 

SQL> alter database add standby logfile thread 1 group 7 ('+DATA') size 200M;

 

Database altered.

 

SQL> select * from v$standby_log;

 

    GROUP# DBID                                        THREAD#  SEQUENCE#      BYTES  BLOCKSIZE       USED ARC STATUS     FIRST_CHANGE# FIRST_TIME          NEXT

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

         5 UNASSIGNED                                        1          0  209715200        512          0 YES UNASSIGNED

         6 UNASSIGNED                                        1          0  209715200        512          0 YES UNASSIGNED

         7 UNASSIGNED                                        1          0  209715200        512          0 YES UNASSIGNED

 

SQL>  alter database add standby logfile thread 2 group 8 ('+DATA') size 200M;

 

Database altered.

 

SQL> alter database add standby logfile thread 2 group 9 ('+DATA') size 200M;

 

Database altered.

 

SQL>  alter database add standby logfile thread 2 group 10 ('+DATA') size 200M;

 

Database altered.

 

SQL> select * from v$standby_log;

    GROUP# DBID                                        THREAD#  SEQUENCE#      BYTES  BLOCKSIZE       USED ARC STATUS     FIRST_CHANGE# FIRST_TIME          NEXT

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

         5 UNASSIGNED                                        1          0  209715200        512          0 YES UNASSIGNED

         6 UNASSIGNED                                        1          0  209715200        512          0 YES UNASSIGNED

         7 UNASSIGNED                                        1          0  209715200        512          0 YES UNASSIGNED

         8 UNASSIGNED                                        2          0  209715200        512          0 YES UNASSIGNED

         9 UNASSIGNED                                        2          0  209715200        512          0 YES UNASSIGNED

        10 UNASSIGNED                                        2          0  209715200        512          0 YES UNASSIGNED

 

6 rows selected.

 

SQL> exit

3.主库添加db_unique_name

SQL> alter system set db_unique_name='orcl' scope=spfile sid='*';

 

4.创建监听DGLISTENER,端口2521

grid用户通过图形netca创建DGLISTENER,方便自动添加资源到集群中管理。

增加scan listener端口:srvctl modify scan_listener -endpoints "TCP:1521/TCP:2521"

 

节点rac1添加如下静态监听参数:

 

SID_LIST_LISTENER =

  (SID_LIST =

    (SID_DESC =

      (GLOBAL_DBNAME = orcl)

      (ORACLE_HOME = /oracle/app/oracle/product/19c/dbhome_1)

      (SID_NAME = orcl1)

    )

    (SID_DESC =

      (GLOBAL_DBNAME = orcl_DGMGRL)

      (ORACLE_HOME = /oracle/app/oracle/product/19c/dbhome_1)

      (SID_NAME = orcl1)

    )

  )

SID_LIST_DGLISTENER =

  (SID_LIST =

    (SID_DESC =

      (GLOBAL_DBNAME = dgorcl)

      (ORACLE_HOME = /oracle/app/oracle/product/19c/dbhome_1)

      (SID_NAME = dgorcl1)

    )

    (SID_DESC =

      (GLOBAL_DBNAME = dgorcl_DGMGRL)

      (ORACLE_HOME = /oracle/app/oracle/product/19c/dbhome_1)

      (SID_NAME = dgorcl1)

    )

  )

节点rac2添加如下静态监听参数:

SID_LIST_LISTENER =

  (SID_LIST =

    (SID_DESC =

      (GLOBAL_DBNAME = orcl)

      (ORACLE_HOME = /oracle/app/oracle/product/19c/dbhome_1)

      (SID_NAME = orcl2)

    )

    (SID_DESC =

      (GLOBAL_DBNAME = orcl_DGMGRL)

      (ORACLE_HOME = /oracle/app/oracle/product/19c/dbhome_1)

      (SID_NAME = orcl2)

    )

  ) 

SID_LIST_DGLISTENER =

  (SID_LIST =

    (SID_DESC =

      (GLOBAL_DBNAME = dgorcl)

      (ORACLE_HOME = /oracle/app/oracle/product/19c/dbhome_1)

      (SID_NAME = dgorcl2)

    )

    (SID_DESC =

      (GLOBAL_DBNAME = dgorcl_DGMGRL)

      (ORACLE_HOME = /oracle/app/oracle/product/19c/dbhome_1)

      (SID_NAME = dgorcl2)

    )

  )

5.创建tnsnames.ora内容

 

[oracle@rac1 admin]$ cat tnsnames.ora

# tnsnames.ora Network Configuration File: /oracle/app/oracle/product/19c/dbhome_1/network/admin/tnsnames.ora

# Generated by Oracle configuration tools.

scan-orcl =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = rac-scan)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = orcl)

    )

  )

scan-dgorcl =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = rac-scan)(PORT = 2521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = dgorcl)

    )

  )

scan_orcl_pdb =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = rac-scan)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = pdb)

    )

  )

scan_dgorcl_pdb =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = rac-scan)(PORT = 2521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = pdb)

    )

  )

scan_orcl_jyc =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = rac-scan)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = jyc)

    )

  )

scan_dgorcl_jyc =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = rac-scan)(PORT = 2521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = jyc)

    )

  )

orcl =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.52.183)(PORT = 1521))

    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.52.184)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = orcl)

    )

  )

 

dgorcl =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.52.183)(PORT = 2521))

    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.52.184)(PORT = 2521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = dgorcl)

    )

  )

tns_orcl =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.52.183)(PORT = 1521))

    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.52.184)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = orcl)

    )

  )

 

tns_dgorcl =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.52.183)(PORT = 2521))

    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.52.184)(PORT = 2521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = dgorcl)

    )

  )

orcl_pdb =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.52.183)(PORT = 1521))

    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.52.184)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = pdb)

    )

  ) 

dgorcl_pdb =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.52.183)(PORT = 2521))

    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.52.184)(PORT = 2521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = pdb)

    )

  )

orcl_jyc =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.52.183)(PORT = 1521))

    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.52.184)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = jyc)

    )

  )

dgorcl_jyc =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.52.183)(PORT = 2521))

    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.52.184)(PORT = 2521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = jyc)

    )

  )

 

6.修改local_listener和remote_listener内容

节点1:

export ORACLE_SID=orcl1

sqlplus / as sysdba

alter system set local_listener ='(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.52.183)(PORT=1521))' scope=both sid='orcl1';

alter system set remote_listener ='rac-scan:1521' scope=both sid='orcl1';

export ORACLE_SID=dgorcl1

sqlplus / as sysdba

alter system set local_listener ='(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.52.183)(PORT=2521))' scope=both sid='dgorcl1';

alter system set remote_listener ='rac-scan:2521' scope=both sid='dgorcl1';

 

节点2:

export ORACLE_SID=orcl2

sqlplus / as sysdba

alter system set local_listener ='(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.52.184)(PORT=1521))' scope=both sid='orcl2';

alter system set remote_listener ='rac-scan:1521' scope=both sid='orcl2';

export ORACLE_SID=dgorcl2

sqlplus / as sysdba

alter system set local_listener ='(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.52.184)(PORT=2521))' scope=both sid='dgorcl2';

alter system set remote_listener ='rac-scan:2521' scope=both sid='dgorcl2';

https://i-blog.csdnimg.cn/blog_migrate/c3af2ed988c646b93b09a92346412a0b.pnghttps://i-blog.csdnimg.cn/blog_migrate/1c965e5bf4839959f909c67dffbd720f.png

7.dbca创建备库dgorcl

dbca -silent -createDuplicateDB \
-gdbName orcl \
-sid dgorcl \
-sysPassword oracle \
-primaryDBConnectionString 192.168.52.183:1521/orcl \
-nodelist rac1,rac2 \
-adminManaged \
-databaseConfigType RAC \
-createAsStandby -dbUniqueName dgorcl \
-datafileDestination '+DATA' \
-initParams db_create_file_dest=+DATA, db_create_online_log_dest_1=+DATA

dbca -silent -createDuplicateDB \

> -gdbName orcl \

> -sid dgorcl \

> -sysPassword oracle \

> -primaryDBConnectionString 192.168.52.183:1521/orcl \

> -nodelist rac1,rac2 \

> -adminManaged \

> -databaseConfigType RAC \

> -createAsStandby -dbUniqueName dgorcl \

> -datafileDestination '+DATA' \

> -initParams db_create_file_dest=+DATA, db_create_online_log_dest_1=+DATA

Prepare for db operation

22% complete

Listener config step

44% complete

Auxiliary instance creation

67% complete

RMAN duplicate

89% complete

Post duplicate database operations

100% complete

 

Look at the log file "/oracle/app/oracle/cfgtoollogs/dbca/dgorcl/dgorcl.log" for further details.

 

8.添加主备参数:

---创建路径

ASMCMD> mkdir +DATA/dgshare/

 

主库修改参数:

show parameter dg

alter system set dg_broker_config_file1='+DATA/dgshare/dr1orcl.dat'  SID='*';

alter system set dg_broker_config_file2='+DATA/dgshare/dr2orcl.dat'  SID='*';

alter system set dg_broker_start=true sid='*';

alter system set LOG_ARCHIVE_DEST_1='LOCATION=USE_DB_RECOVERY_FILE_DEST  VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=orcl' sid='*';

alter system set LOG_ARCHIVE_DEST_2='service=tns_dgorcl VALID_FOR=(online_logfiles,primary_role) DB_UNIQUE_NAME=dgorcl' sid='*';

alter system set log_archive_config='dg_config=(orcl,dgorcl)' sid='*';

alter system set db_file_name_convert='+DATA','+DATA' scope=spfile sid='*';

alter system set log_file_name_convert='+DATA','+DATA' scope=spfile sid='*';

alter system set standby_file_management=auto scope=spfile sid='*';

alter system set fal_client='tns_orcl' sid='*';

alter system set fal_server='tns_dgorcl' sid='*';

 

 

 

备库修改参数:

show parameter dg

alter system set dg_broker_config_file1='+DATA/dgshare/dr1dgorcl.dat' SID='*';

alter system set dg_broker_config_file2='+DATA/dgshare/dr2dgorcl.dat' SID='*';

alter system set dg_broker_start=true sid='*';

 

alter system set LOG_ARCHIVE_DEST_1='LOCATION=USE_DB_RECOVERY_FILE_DEST VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=dgorcl' scope=spfile sid='*';

alter system set LOG_ARCHIVE_DEST_2='service=tns_orcl VALID_FOR=(online_logfiles,primary_role) DB_UNIQUE_NAME=orcl' sid='*';

 

alter system set log_archive_config='dg_config=(orcl,dgorcl)';

alter system set db_file_name_convert='+DATA','+DATA' scope=spfile sid='*';

alter system set log_file_name_convert='+DATA','+DATA' scope=spfile sid='*';

alter system set standby_file_management=auto scope=spfile sid='*';

alter system set fal_client='tns_dgorcl' sid='*';

alter system set fal_server='tns_orcl' sid='*';

 

srvctl stop db -d orcl

srvctl start db -d orcl

srvctl stop db -d dgorcl

srvctl start db -d dgorcl

set line 160

set wrap off

col inst_id for 99

select INST_ID, dbid,name,DB_UNIQUE_NAME,current_scn,protection_mode,database_role,force_logging,open_mode,switchover_status from gv$database;

 

启用同步测试:

alter database recover managed standby database cancel;

alter database recover managed standby database using current logfile disconnect;

测试连接:

sqlplus sys/oracle@orcl as sysdba
sqlplus sys/oracle@dgorcl as sysdba
sqlplus jyc/jyc@dgorcl_pdb
sqlplus jyc/jyc@dgorcl_jyc

 

9.配置dg_broker

dgmgrl sys/oracle@orcl

show configuration

create configuration orcl as

primary database is orcl

connect identifier is tns_orcl;

add database dgorcl as

connect identifier is tns_dgorcl

maintained as physical;

enable configuration

show configuration verbose

show database verbose orcl;

show database verbose dgorcl;

switchover to dgorcl;

edit database dgorcl set property logxptmode='sync';

edit configuration set protection mode as maxavailability;

edit database orcl set property 'faststartfailovertarget'='dgorcl';

edit database dgorcl set property 'faststartfailovertarget'='orcl';

edit database 'dgorcl' set state='apply-off';

alter database open;

edit database 'dgorcl' set state='apply-on';

edit database dgorcl set state='apply-on' with apply instance=orcl1;

show fast_start failover

show database verbose orcl 'faststartfailovertarget';

enable fast_start failover;     

show fast_start failover;

failover to dgorcl;

reinstate database orcl;

 

alter database recover managed standby database cancel;

alter database flashback on;

select flashback_on,force_logging from v$database;

alter database recover managed standby database using current logfile disconnect;

 

### 回答1: Oracle 19c RAC DataGuard搭建是一种高可用性和容灾解决方案。RAC集群可以提供跨数据中心的集群解决方案。DataGuard技术可以帮助数据库管理员在灾难发生时迅速切换到备份数据库。 Oracle 19c RAC DataGuard搭建可以分为以下步骤: 1. 安装Oracle Grid Infrastructure和RAC数据库实例。 2. 配置RAC集群。这包括网络设置、存储设置和群集设置。确保所有节点能够相互通信,并且使用共享存储。 3. 创建主数据库和备份数据库。主备同步,备份数据库和主数据库位于不同的数据中心。 4. 配置DataGuard物理备份和逻辑备份。 5. 在主数据库和备份数据库之间配置DataGuard次级应用程序。 6. 测试DataGuard配置是否正常工作。测试主数据库的故障转移,确保在主数据库发生故障时可以切换到备份数据库。 Oracle 19c RAC DataGuard搭建需要谨慎计划和操作。在搭建过程中需要确保数据的一致性,并且需要考虑容灾策略,如灾难恢复和演练。只有通过正确的设置和测试,才能确保Oracle 19c RAC DataGuard搭建提供高可用性和容灾保护解决方案。 ### 回答2: Oracle 19c是一种强大的数据库管理系统,可用于构建高可用性环境。对于那些需要可靠数据保护和复制的企业来说,Oracle RAC和DataGuard功能是非常重要的。 首先,要构建Oracle 19c RAC集群,需要至少两台服务器。可以使用Oracle Grid Infrastructure安装程序轻松地将这些服务器组成集群。RAC集群是可以在多个服务器上运行的数据库实例,它们能够协同工作,处理更多的请求并提供更快的性能。安装后,可以将应用程序连接到集群,并使用透明应用程序故障转移(TAF)来实现应用程序的优化和可用性。 接下来就是使用DataGuard来进行数据保护。DataGuard是Oracle自带的一个功能,它可以实现数据镜像、备份和恢复。它需要在主数据库和备用数据库之间创建物理链接和转发。主数据库通过将其变更记录发送到备用数据库来保持它们同步。如果主库崩溃,则可以立即启动备用数据库来维护业务连续性。 通过上述的步骤,可以构建一个高可用、高性能、高可靠、高安全的Oracle 19c RAC集群和DataGuard数据保护系统。每一个组件的优点都可以为企业提供无可比拟的价值,并将使整个环境更加健壮和不易受到数据故障的影响。 ### 回答3: Oracle 19c RAC DataGuard搭建是一种高可用性和灾备性解决方案,它可以确保企业系统和数据在本地或异地灾害发生时仍能保持可用。 首先,需要建立两个物理服务器,安装Oracle 19c RAC数据库软件并创建RAC实例。然后,需要创建两个DataGuard实例并配置它们之间的数据传输。 在RAC集群环境下,每个节点上都需要安装Oracle软件,并使用Oracle ASM进行存储管理。用户需要创建一个ASM磁盘组来存储Oracle数据库,并为每个节点划分适当的ASM磁盘组。 接下来,建立数据保护服务器,并安装Oracle 19c DataGuard数据库软件。在数据保护服务器上创建一个新的实例,并配置DataGuard属性。 然后,开始配置主数据库和备份数据库的DataGuard。将主数据库设为“主”模式,备份数据库设置为“备份”模式。配置主数据库的重做日志和备份数据库的重做日志的传输顺序,并指定主数据库的网络地址和备份数据库的网络地址及端口号。 最后,在主数据库上设置联机重做日志、数据文件和控制文件自动备份;并在备份数据库上设置数据文件和控制文件自动备份。测试系统中的故障转移、自动重试和网络连接性问题,以确保系统在灾难发生后可以无缝地进行切换和恢复。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值