ORACLE 11G 之DATAGUARD搭建物理standby

2024-05-10 06:18

本文主要是介绍ORACLE 11G 之DATAGUARD搭建物理standby,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1 安装环境

Primary库上安装数据库软件,并建监听和实例,在Standby库上安装数据库软件,并建监听,但不建实例。

 

Primary

Standby

操作系统

CentOS release 6.4 64

CentOS release 6.4 64

IP/主机名

192.183.3.17/nn

192.183.3.145/kk

数据库软件版本

oracle 11.2.0.1.0

oracle 11.2.0.1.0

ORACLE_HOME

/home/oracle/product

/home/oracle/product

ORACLE_SID

orcl

orcl

db_unique_name

primary

standby

Net Service Name

ser_pri

ser_std



2 Primary库配置

2.1 设置数据库强制归档与归档模式

  •  将主库设置为FORCE LOGGING模式
      SQL>alter database force logging;
  • 开启归档模式

        查看归档模式:

     SQL>archive log list;
        设置归档模式:


2.2重建密码文件

            同一个Dataguard中所有数据库必须拥有独立的密码文件,并且保证sys用户拥有相同密码来保证redo的传输。默认Oracle自建的密码文件保存在$ORACLE_HOME/dbs/orapw$ORACLE_SID中,可以直接copystandby库对应目录中(本案例采用该方法),如果没有该文件也可以通过如下方式重建。

[oracle@nn~]$ orapwd file='$ORACLE_HOME/dbs/orapw$ORACLE_SID' password=123456 force=y ignorecase=y

2.3 STANDBY日志文件与控制文件创建

  • 添加standby日志文件

   

     SQL>alter database add standby logfile group 4('/home/oracle/oradata/orcl/stdby01.log')size 50M;SQL>alter database add standby logfile group 5('/home/oracle/oradata/orcl/stdby02.log')size 50M;SQL>alter database add standby logfile group 6('/home/oracle/oradata/orcl/std03.log')size 50M;SQL>select group#,member from v$logfile order by 1;

  •  创建standby控制文件
       SQL> alter database create standby controlfile as 'home/oracle/oradata/orcl/standby01.ctl';[oracle@nn ~]$ cp /home/oracle/oradata/orcl/standby01.ctl /home/oracle/flash_recovery_area/orcl/ standby02.ctl


2.4 修改primarypfile

2.4.1 生成pfile
       SQL>create pfile from spfile;SQL>shutdown immediate;
2.42 修改pfile
     [oracle@nn~]$vi $ORACLE_HOME/dbs/initorcl.ora

在最后添加如下红色框内内容:

2.4.3 生成spfile
       SQL>startup pfile='/home/oracle/product/dbs/initorcl.ora'SQL>create spfile from pfile='/home/oracle/product/dbs/initorcl.ora';

2.5 修改监听配置文件

         监听文件目录$ORACLE_HOME/network/admin,配置完成后重启监听。

    [oracle@nn admin]$vi listener.ora

2.6修改TNS配置文件

         TNS文件目录$ORACLE_HOME/network/admin

     [oracle@nn admin]$vi tnsnames.ora

2.7 备份数据库

    [oracle@nn backupset]$rman target/RMAN>sql ''alter system archive log current'';RMAN>backup database include current controlfile for standby plus archivelog;


         备份完成后会在闪回区生产备份文件。

3 standby库配置

3.1 建立相应的文件目录

         包括dump文件目录,闪回区,数据文件目录,可以通过show parameter dest命令查看

      [oracle@kk~]$mkdir -p /home/oracle/admin/orcl/adump[oracle@kk~]$mkdir -p /home/oracle/admin/orcl/dpdump[oracle@kk~]$mkdir -p /home/oracle/admin/orcl/pfile[oracle@kk~]$mkdir -p /home/oracle/diag/rdbms[oracle@kk~]$mkdir -p /home/oracle/flash_recovery_area[oracle@kk~]$mkdir -p /home/oracle/oradata/orcl


3.2 从primary库服务器上拷贝文件

3.2.1 拷贝闪回区的备份内容
      [oracle@nn ORCL]$scp -r /home/oracle/flash_recovery_area/ORCL/backupset 192.183.3.145:/home/oracle/flash_recovery_area/ORCL/


3.2.2 拷贝参数文件与密码文件
     [oracle@nn ORCL]$scp -r /home/oracle/product/dbs 192.183.3.145:/home/oracle/product/dbs


3.2.3 拷贝监听文件
     [oracle@nn~]$scp -r /home/oracle/product/network/admin/*.ora 192.183.3.145:/home/oracle/product/network/admin/

3.3 修改监听配置文件

3.4 TNS配置文件

3.5 修改参数文件

     [oracle@kk ~]$ vi $ORACLE_HOME/dbs/initorcl.ora

修改如下内容:

3.6 启动standbynomount状态

       SQL> STARTUP nomount pfile='/home/oracle/product/dbs/initorcl.ora';SQL> create spfile from pfile='/home/oracle/product/dbs/initorcl.ora';

3.7 恢复数据库

     [oracle@kk~]$rman target sys/123456@ser_pri auxiliary/RMAN> duplicate target database for standby nofilenamecheck dorecover;

         或者执行如下的脚本也可以进行standby库的恢复。



3.8 启动STANDBY库

       Duplicate 完成后standby库已经处于正常的mount状态,应打开recover

    SQL> alter database recover managed standby database disconnect from session;

       查看数据库角色、角色切换、保护模式

    SQL> select database_role,switchover_status,protection_mode,protection_level from v$database;

3.9 验证配置是否成功

       归档日志Current log sequence相同,说明配置成功,如下:

  •  Primary库

  •  Standby库




这篇关于ORACLE 11G 之DATAGUARD搭建物理standby的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

oracle 11g导入\导出(expdp impdp)之导入过程

《oracle11g导入导出(expdpimpdp)之导入过程》导出需使用SEC.DMP格式,无分号;建立expdir目录(E:/exp)并确保存在;导入在cmd下执行,需sys用户权限;若需修... 目录准备文件导入(impdp)1、建立directory2、导入语句 3、更改密码总结上一个环节,我们讲了

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

Linux搭建ftp服务器的步骤

《Linux搭建ftp服务器的步骤》本文给大家分享Linux搭建ftp服务器的步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录ftp搭建1:下载vsftpd工具2:下载客户端工具3:进入配置文件目录vsftpd.conf配置文件4:

Java 与 LibreOffice 集成开发指南(环境搭建及代码示例)

《Java与LibreOffice集成开发指南(环境搭建及代码示例)》本文介绍Java与LibreOffice的集成方法,涵盖环境配置、API调用、文档转换、UNO桥接及REST接口等技术,提供... 目录1. 引言2. 环境搭建2.1 安装 LibreOffice2.2 配置 Java 开发环境2.3 配

Oracle迁移PostgreSQL隐式类型转换配置指南

《Oracle迁移PostgreSQL隐式类型转换配置指南》Oracle迁移PostgreSQL时因类型差异易引发错误,需通过显式/隐式类型转换、转换关系管理及冲突处理解决,并配合验证测试确保数据一致... 目录一、问题背景二、解决方案1. 显式类型转换2. 隐式转换配置三、维护操作1. 转换关系管理2.

Oracle查询表结构建表语句索引等方式

《Oracle查询表结构建表语句索引等方式》使用USER_TAB_COLUMNS查询表结构可避免系统隐藏字段(如LISTUSER的CLOB与VARCHAR2同名字段),这些字段可能为dbms_lob.... 目录oracle查询表结构建表语句索引1.用“USER_TAB_COLUMNS”查询表结构2.用“a

Oracle数据库定时备份脚本方式(Linux)

《Oracle数据库定时备份脚本方式(Linux)》文章介绍Oracle数据库自动备份方案,包含主机备份传输与备机解压导入流程,强调需提前全量删除原库数据避免报错,并需配置无密传输、定时任务及验证脚本... 目录说明主机脚本备机上自动导库脚本整个自动备份oracle数据库的过程(建议全程用root用户)总结

Python极速搭建局域网文件共享服务器完整指南

《Python极速搭建局域网文件共享服务器完整指南》在办公室或家庭局域网中快速共享文件时,许多人会选择第三方工具或云存储服务,但这些方案往往存在隐私泄露风险或需要复杂配置,下面我们就来看看如何使用Py... 目录一、android基础版:HTTP文件共享的魔法命令1. 一行代码启动HTTP服务器2. 关键参

如何使用Haporxy搭建Web群集

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

Oracle 数据库数据操作如何精通 INSERT, UPDATE, DELETE

《Oracle数据库数据操作如何精通INSERT,UPDATE,DELETE》在Oracle数据库中,对表内数据进行增加、修改和删除操作是通过数据操作语言来完成的,下面给大家介绍Oracle数... 目录思维导图一、插入数据 (INSERT)1.1 插入单行数据,指定所有列的值语法:1.2 插入单行数据,指