Oracle 19c RAC集群ADG搭建

1、将主库的pfile和passwdfile发送到备库

bash 复制代码
#主库一节点操作
scp -P1234 /tmp/pfile2025.ora  bak_ip:/home/oracle
sco -P1234 /oracle/app/oracle/product/19.0.0/db/dbs/orapw$ORACLE_SID bak_ip:/oracle/app/oracle/product/19.0.0/db/dbs

2、备库修改参数文件成standby相关环境并启动到nomount状态,创建审计目录

bash 复制代码
#备库一节点操作
#在参数文件中添加如下内容
vi /home/oracle/pfile2025.ora
*.db_file_name_convert='+DATA','+DATA'
*.log_file_name_convert='+REDO01','+REDO01','+REDO02','+REDO02'
*.fal_client='bbdb'
*.fal_server='bbdb_dg'
*.log_archive_config='DG_CONFIG=(bbdb,bbdb_dg)'
*.log_archive_dest_1='LOCATION=+ARCH VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=bbdb'
*.log_archive_dest_2='SERVICE=bbdb_dg lgwr async valid_for=(online_logfiles,primary_role) DB_UNIQUE_NAME=bbdb_dg'
*.standby_file_management='AUTO'
*.db_name='bbdb'
*.service_names='bbdb'
*.DB_UNIQUE_NAME='bbdb'
#192.168.137.3/4为备库VIP
bbdb1.local_listener='(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.137.3)(PORT=1521))'
bbdb2.local_listener='(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.137.4)(PORT=1521))'

#创建审计目录
su - oracle
mkdir -p /oracle/app/oracle/admin/bbdb/adump

#启动主库一节点参数文件
su - oracle
export ORACLE_SID=bbdb
sqlplus / as sysdba
startup nomount pfile='/home/oracle/pfile2025.ora'

3、在备库一节点增加静态监听

bash 复制代码
su - grid
cd $ORACLE_HOME/network/admin
vi listener.ora
 SID_LIST_LISTENER=
    (SID_LIST=
        (SID_DESC=
		  (GLOBAL_DBNAME=bbdb)
          (SID_NAME=bbdb1)			
          (ORACLE_HOME=/oracle/app/oracle/product/19.0.0/db)			
         )
        )
       

4、主库备库所有节点都配置tns

bash 复制代码
su - oracle
cd $ORACLE_HOME/network/admin
cp tnsnames.ora tnsnames.ora_2025
vi tnsnames.ora

BBDB =
  (DESCRIPTION =
    #备库物理IP、VIP及scan IP
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.137.1)(PORT = 1521))
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.137.2)(PORT = 1521))
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.137.3)(PORT = 1521))
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.137.4)(PORT = 1521))
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.137.5)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = bbdb)
    )
  )

BBDB-DG =
  (DESCRIPTION =
    #主库物理IP、VIP及scan IP
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.138.1)(PORT = 1521))
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.138.2)(PORT = 1521))
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.138.3)(PORT = 1521))
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.138.4)(PORT = 1521))
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.138.5)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = bbdb-dg)
    )
  )

5、在备库一节点开始复制

bash 复制代码
su - oracle
rman target sys/'xxxx'@bbdb-dg auxiliary sys/'xxxx'@bbdb
duplicate target database for standby from active database;

6、在备库一节点开启日志应用

bash 复制代码
#待复制结束后执行
su - oracle
sqlplus / as sysdba
alter database recover managed standby database parallel 8 using current logfile disconnect from session;

7、启动备库二节点

bash 复制代码
su - oracle
sqlplus / as sysdba
startup

8、检查备份状态

bash 复制代码
#主库一节点
select max(sequence#) , thread# from gv$archived_log group by thread#;

#备库一节点
select max(sequence#) , thread# from gv$archived_log group by thread#;
select max(sequence#) from v$managed_standby;
相关推荐
+VX:Fegn08956 分钟前
计算机毕业设计|基于springboot + vue图书管理系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
杨云龙UP1 小时前
MySQL 8.0.x InnoDB 写入链路优化:Redo Log 与 Buffer Pool 扩容与缓冲区调优实战记录-20251029
linux·运维·数据库·sql·mysql
黄俊懿2 小时前
【深入理解SpringCloud微服务】Seata(AT模式)源码解析——开启全局事务
java·数据库·spring·spring cloud·微服务·架构·架构师
我命由我123452 小时前
python-dotenv - python-dotenv 快速上手
服务器·开发语言·数据库·后端·python·学习·学习方法
繁星蓝雨2 小时前
Qt优雅的组织项目结构三(使用CMakeLists进行模块化配置)——————附带详细示例代码
开发语言·数据库·qt
Jerry.张蒙3 小时前
SAP业财一体化实现的“隐形桥梁”-价值串
大数据·数据库·人工智能·学习·区块链·aigc·运维开发
无名修道院3 小时前
DVWA 靶场搭建:Windows11(phpstudy 搭建)(步骤 + 截图 + 常见问题)
数据库·网络安全·渗透测试·靶场·php·dvwa·phpstudy
CodeAmaz5 小时前
MySQL 事务隔离级别详解
数据库·mysql·事务隔离级别
千寻技术帮5 小时前
10398_基于SSM的教学评价管理系统
数据库·mysql·毕业设计·ssm·教学评价
晨星3345 小时前
使用 IntelliJ IDEA 轻松连接 Java 与 MySQL 8 数据库
java·开发语言·数据库