手动搭建Dataguard步骤(同一服务器上physic standby)

2024-02-07 06:18

本文主要是介绍手动搭建Dataguard步骤(同一服务器上physic standby),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

(1)建立对应standby数据库的目录,如$ORACLE_BASE/admin,$ORACL_EBASE/oradata下的对应目录以及相关子目录,归档日志存放目录,闪回区存放路径等;创建密码文件。

mkdir /opt/oracle/admin/standby
cd /opt/oracle/admin/standby
mkdir adump bdump cdump udump dpdump

mkdir /opt/oracle/oradata/standby

mkdir /opt/oracle/oradata/standby/archivelog

 

orapwd file=$ORACLE_HOME/dbs/orapwstandby password=oracle force=y

 

(2) 开始主库的备份,备份包括数据文件和控制文件

alter database begin backup;

 cp /opt/oracle/oradata/ocp/system01.dbf /home/oracle/backup/
 cp /opt/oracle/oradata/ocp/undotbs01.dbf /home/oracle/backup/
 cp /opt/oracle/oradata/ocp/sysaux01.dbf /home/oracle/backup/
 cp /opt/oracle/oradata/ocp/users01.dbf /home/oracle/backup/
 cp /opt/oracle/oradata/ocp/perfstat01.dbf /home/oracle/backup/
 cp /opt/oracle/oradata/ocp/example01.dbf /home/oracle/backup/
 cp /opt/oracle/oradata/ocp/user01.dbf /home/oracle/backup/
 cp /opt/oracle/oradata/ocp/user02.dbf /home/oracle/backup/

alter database end backup;

alter system archive log current;

alter database create standby controlfile as '/home/oracle/backup/control01.ctl'; --这里要注意语法

 

(3) 修改主库的参数文件

create pfile from spfile

vim $ORACLE_HOME/dbs/initocp.ora

 

*.log_archive_config='dg_config=(demo,standby)'
*.fal_server=standby
*.fal_client=demo
*.standby_file_management=AUTO
*.db_unique_name=demo
*.log_archive_dest_1='LOCATION=/opt/oracle/oradata/ocp/archive/'
*.log_archive_dest_2='SERVICE=standby valid_for=(online_logfiles,primary_role) db_unique_name=standby'
*.log_archive_dest_state_1='ENABLE'
*.log_archive_dest_state_2='ENABLE'

 

(4)关闭主库,创建spfile

shutdown immediate;

create spfile from pfile;

 

(5)创建备库的参数文件

 

create pfile='?/dbs/initstandby.ora' from spfile;

 

改变其中的相关路径,设置如下对应参数:
*.log_archive_dest_1='LOCATION=/opt/oracle/oradata/standby/archive/'
*.log_archive_dest_2='SERVICE=ocp valid_for=(online_logfiles,primary_role) db_unique_name=ocp'
*.log_archive_config='dg_config=(ocp,standby)'
*.fal_server=ocp
*.fal_client=standby
*.standby_file_management=AUTO
*.db_unique_name=standby
*.db_file_name_convert='/opt/oracle/oradata/ocp','/opt/oracle/oradata/standby'
*.log_file_name_convert='/opt/oracle/oradata/ocp','/opt/oracle/oradata/standby'
*.log_archive_dest_state_1='ENABLE'
*.log_archive_dest_state_2='ENABLE'

修改pfile完成后,创建备库对应的spfile:

create spfile='?/dbs/spfilestandby.ora' from pfile='?/dbs/initstandby.ora';

 

(6) 配置监听,将对应的db_unique_name配置进去

vim $ORACLE_HOME/network/admin/tnsnames.ora

DEMO =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.102)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = demo)
    )
  )

STANDBY =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.102)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = standby)
    )
  )

重新启动监听。

 

(7)copy 主库数据文件和控制文件的备份到备库对应目录

cd  /home/oracle/backup/

cp * /opt/oracle/oradata/standby

 

(8)启动备库

export ORACLE_SID=standby

startup mount;

 

如果没有临时文件,记得增加临时文件,以备查询时排序的需要。

alter tablespace temp add tempfile '路径' size 20M;

 

(9)启动主库

export ORACLE_SID=demo

startup;

 

(10) 验证日志是否传送到备库

在主库切日志 alter system switch logfile; / /

主库查看 archive log list

 

备库查看 archive log list;

 

如果没有传送,请检查log_archive_dest_n的设置以及tnsnames的配置(用tnsping检验是否可以ping 通)

 

select process,status from v$managed_standby; --备库上看看有哪些进程,有没有RFS进程

 

select message_num,message from v$dataguard_status; --看看提示信息

 

 

 

 

 

 

这篇关于手动搭建Dataguard步骤(同一服务器上physic standby)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/686752

相关文章

Visual Studio 2022 编译C++20代码的图文步骤

《VisualStudio2022编译C++20代码的图文步骤》在VisualStudio中启用C++20import功能,需设置语言标准为ISOC++20,开启扫描源查找模块依赖及实验性标... 默认创建Visual Studio桌面控制台项目代码包含C++20的import方法。右键项目的属性:

mysql中的服务器架构详解

《mysql中的服务器架构详解》:本文主要介绍mysql中的服务器架构,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、mysql服务器架构解释3、总结1、背景简单理解一下mysqphpl的服务器架构。2、mysjsql服务器架构解释mysql的架

python删除xml中的w:ascii属性的步骤

《python删除xml中的w:ascii属性的步骤》使用xml.etree.ElementTree删除WordXML中w:ascii属性,需注册命名空间并定位rFonts元素,通过del操作删除属... 可以使用python的XML.etree.ElementTree模块通过以下步骤删除XML中的w:as

java向微信服务号发送消息的完整步骤实例

《java向微信服务号发送消息的完整步骤实例》:本文主要介绍java向微信服务号发送消息的相关资料,包括申请测试号获取appID/appsecret、关注公众号获取openID、配置消息模板及代码... 目录步骤1. 申请测试系统2. 公众号账号信息3. 关注测试号二维码4. 消息模板接口5. Java测试

Linux如何快速检查服务器的硬件配置和性能指标

《Linux如何快速检查服务器的硬件配置和性能指标》在运维和开发工作中,我们经常需要快速检查Linux服务器的硬件配置和性能指标,本文将以CentOS为例,介绍如何通过命令行快速获取这些关键信息,... 目录引言一、查询CPU核心数编程(几C?)1. 使用 nproc(最简单)2. 使用 lscpu(详细信

如何使用Haporxy搭建Web群集

《如何使用Haporxy搭建Web群集》Haproxy是目前比较流行的一种群集调度工具,同类群集调度工具有很多如LVS和Nginx,本案例介绍使用Haproxy及Nginx搭建一套Web群集,感兴趣的... 目录一、案例分析1.案例概述2.案例前置知识点2.1 HTTP请求2.2 负载均衡常用调度算法 2.

如何在Mac上彻底删除Edge账户? 手动卸载Edge浏览器并清理残留文件技巧

《如何在Mac上彻底删除Edge账户?手动卸载Edge浏览器并清理残留文件技巧》Mac上的Edge账户里存了不少网站密码和个人信息,结果同事一不小心打开了,简直尴尬到爆炸,想要卸载edge浏览器并清... 如果你遇到 Microsoft Edge 浏览器运行迟缓、频繁崩溃或网页加载异常等问题,可以尝试多种方

Mac系统下卸载JAVA和JDK的步骤

《Mac系统下卸载JAVA和JDK的步骤》JDK是Java语言的软件开发工具包,它提供了开发和运行Java应用程序所需的工具、库和资源,:本文主要介绍Mac系统下卸载JAVA和JDK的相关资料,需... 目录1. 卸载系统自带的 Java 版本检查当前 Java 版本通过命令卸载系统 Java2. 卸载自定

MySQL MCP 服务器安装配置最佳实践

《MySQLMCP服务器安装配置最佳实践》本文介绍MySQLMCP服务器的安装配置方法,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下... 目录mysql MCP 服务器安装配置指南简介功能特点安装方法数据库配置使用MCP Inspector进行调试开发指

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4