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数据库常见字段类型大全以及超详细解析

《Oracle数据库常见字段类型大全以及超详细解析》在Oracle数据库中查询特定表的字段个数通常需要使用SQL语句来完成,:本文主要介绍Oracle数据库常见字段类型大全以及超详细解析,文中通过... 目录前言一、字符类型(Character)1、CHAR:定长字符数据类型2、VARCHAR2:变长字符数

使用Python实现快速搭建本地HTTP服务器

《使用Python实现快速搭建本地HTTP服务器》:本文主要介绍如何使用Python快速搭建本地HTTP服务器,轻松实现一键HTTP文件共享,同时结合二维码技术,让访问更简单,感兴趣的小伙伴可以了... 目录1. 概述2. 快速搭建 HTTP 文件共享服务2.1 核心思路2.2 代码实现2.3 代码解读3.

MySQL双主搭建+keepalived高可用的实现

《MySQL双主搭建+keepalived高可用的实现》本文主要介绍了MySQL双主搭建+keepalived高可用的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录一、测试环境准备二、主从搭建1.创建复制用户2.创建复制关系3.开启复制,确认复制是否成功4.同

Oracle存储过程里操作BLOB的字节数据的办法

《Oracle存储过程里操作BLOB的字节数据的办法》该篇文章介绍了如何在Oracle存储过程中操作BLOB的字节数据,作者研究了如何获取BLOB的字节长度、如何使用DBMS_LOB包进行BLOB操作... 目录一、缘由二、办法2.1 基本操作2.2 DBMS_LOB包2.3 字节级操作与RAW数据类型2.

查看Oracle数据库中UNDO表空间的使用情况(最新推荐)

《查看Oracle数据库中UNDO表空间的使用情况(最新推荐)》Oracle数据库中查看UNDO表空间使用情况的4种方法:DBA_TABLESPACES和DBA_DATA_FILES提供基本信息,V$... 目录1. 通过 DBjavascriptA_TABLESPACES 和 DBA_DATA_FILES

使用DeepSeek搭建个人知识库(在笔记本电脑上)

《使用DeepSeek搭建个人知识库(在笔记本电脑上)》本文介绍了如何在笔记本电脑上使用DeepSeek和开源工具搭建个人知识库,通过安装DeepSeek和RAGFlow,并使用CherryStudi... 目录部署环境软件清单安装DeepSeek安装Cherry Studio安装RAGFlow设置知识库总

Linux搭建Mysql主从同步的教程

《Linux搭建Mysql主从同步的教程》:本文主要介绍Linux搭建Mysql主从同步的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux搭建mysql主从同步1.启动mysql服务2.修改Mysql主库配置文件/etc/my.cnf3.重启主库my

国内环境搭建私有知识问答库踩坑记录(ollama+deepseek+ragflow)

《国内环境搭建私有知识问答库踩坑记录(ollama+deepseek+ragflow)》本文给大家利用deepseek模型搭建私有知识问答库的详细步骤和遇到的问题及解决办法,感兴趣的朋友一起看看吧... 目录1. 第1步大家在安装完ollama后,需要到系统环境变量中添加两个变量2. 第3步 “在cmd中

Oracle登录时忘记用户名或密码该如何解决

《Oracle登录时忘记用户名或密码该如何解决》:本文主要介绍如何在Oracle12c中忘记用户名和密码时找回或重置用户账户信息,文中通过代码介绍的非常详细,对同样遇到这个问题的同学具有一定的参... 目录一、忘记账户:二、忘记密码:三、详细情况情况 1:1.1. 登录到数据库1.2. 查看当前用户信息1.

oracle DBMS_SQL.PARSE的使用方法和示例

《oracleDBMS_SQL.PARSE的使用方法和示例》DBMS_SQL是Oracle数据库中的一个强大包,用于动态构建和执行SQL语句,DBMS_SQL.PARSE过程解析SQL语句或PL/S... 目录语法示例注意事项DBMS_SQL 是 oracle 数据库中的一个强大包,它允许动态地构建和执行