iis服务器助手广告广告
返回顶部
首页 > 资讯 > 操作系统 >Linux6.4+Oracle11.2.0.4搭建DG
  • 159
分享到

Linux6.4+Oracle11.2.0.4搭建DG

2024-04-02 19:04:59 159人浏览 薄情痞子
摘要

试验环境描述硬件信息本次测试环境使用的虚拟环境如下图所示,使用VMware Workstation 11搭建的两台oracle linux 6.4 64位操作系统,通过两台机器桥接到一块虚拟网卡。系统信息

试验环境描述

硬件信息

本次测试环境使用的虚拟环境如下图所示,使用VMware Workstation 11搭建的两台oracle linux 6.4 64位操作系统,通过两台机器桥接到一块虚拟网卡。

Linux6.4+Oracle11.2.0.4搭建DG

系统信息

服务器一(主)

服务器二(备)

主机名:zhanky

IP:  192.168.214.10

数据库版本: oracle   11.2.0.4

库名:zky  TNSNAME:DGZ        

主机名:zhanky

IP:  192.168.214.11

数据库版本: oracle   11.2.0.4

库名:zky  TNSNAME:DGB        

DG故障切换示意

         主备库正常情况客户端访问流量访问主库,数据自动同步到备库。当主库出现故障时,管理员手动将备库切换为主库。此时客户端访问备库实现业务不中断正常访问。

Linux6.4+Oracle11.2.0.4搭建DG

测试流程

         我们模仿正式环境,先将primary服务器准备好,然后在standby服务器上只安装数据库软件。在本次测试中我们使用rman的方式来备份数据库,然后在standby上面还原。关键实施步骤如下

Primary

1、  打开归档模式,开启强制记录日志

2、  创建日志组

3、  添加静态监听,添加tns

4、  生成密码文件

5、  生成pfile添加DG内容

6、  重启通过pfile启动,更新spfile

7、  通过rman duplicate备份

8、  生成控制文件

Standby

1、  将备份文件拷贝到standby对应的位置 。

2、  将密码文件考到对应的位子

3、  将监听文件修改后考到对应的位置,然后开启监听

4、  将pfile文件更改后拷贝到standby

5、  通过oradim创建实例,加载更改的pfile到nomount模式

6、  将pfile更新到spfile,然后重启数据库

7、  通过rman 回复数据库,完成后open

8、  将控制文件替换

9、  然后启用DG到备库模式


DG主服务器设置

检查数据库归档

查看归档日志是否开启     

sql> arcHive   log list

Linux6.4+Oracle11.2.0.4搭建DG

上图看出库开启了归档模式。如果没有开启则按照以下步骤开启归档模式

SQL>   shutdown immediate

SQL>   startup mount

SQL>   alter database archivelog;

SQL>   alter database force logging;

SQL>   alter database open;

Linux6.4+Oracle11.2.0.4搭建DG

创建日志组

创建日志组

[oracle@zhanky /]$ mkdir   /u01/archive

SQL> alter database add   standby logfile group 4 '/u01/archive/STAN04.LOG' size 50m;

SQL> alter database add standby logfile group 5 '/u01/archive/STAN05.LOG'   size 50m;

SQL> alter database add standby logfile group 6 '/u01/archive/STAN06.LOG'   size 50m;

SQL> alter database add standby logfile group 7 '/u01/archive/STAN07.LOG'   size 50m;

Linux6.4+Oracle11.2.0.4搭建DG

检查密码文件

密码文件要拷贝到DG备库,保持两边密码文件一致。

[oracle@zhanky ~]$ ls /u01/app/oracle/product/11.2.0/db_1/dbs/

Linux6.4+Oracle11.2.0.4搭建DG

如果没有密码文件可以手动创建

SQL>   orapwd file=/u01/app/oracle/product/11.2.0/db_1/dbs/orapwzky passWord=manager   entries=10

建议设置密码永不过期

SQL> alter profile default limit password_life_time unlimited;

配置监听文件

配置静态监听,在listener.ora文件中添加静态监听

[oracle@zhanky ~]$ vi   /u01/app/oracle/product/11.2.0/db_1/network/admin/listener.ora

SID_LIST_LISTENER=

  (SID_LIST =

    (SID_DESC =

      (GLOBAL_DBNAME = zky)

      (ORACLE_HOME   =/u01/app/oracle/product/11.2.0/db_1)

      (SID_NAME = zky)

    )

  )

Linux6.4+Oracle11.2.0.4搭建DG

注意linux环境中更改侦听需要先stop在修改,不然会导致侦听服务无法正常启动关闭

配置TNS文件

配置tnsname.ora,设置DG主和DG备服务器监听

[oracle@zhanky ~]$ vi   /u01/app/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora

DGZ =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL =   tcp)(HOST = 192.168.214.10)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = zky)

    )

  )

DGB =

  (DESCRIPTION =

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

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = zky)

    )

  )

Linux6.4+Oracle11.2.0.4搭建DG

配置DG参数

下面开始配置dg文件了,配置完成后记得重启数据库。

SQL> alter system set   db_unique_name=dgz scope=spfile;

SQL> alter system set   LOG_ARCHIVE_CONFIG='DG_CONFIG=(DGZ,DGB)' scope=both;

SQL> alter system set   LOG_ARCHIVE_DEST_1='LOCATION=/u01/app/oracle/oradata/zky/ VALID_FOR=(ALL_LOGFILES,ALL_ROLES)  DB_UNIQUE_NAME=DGZ' scope=spfile;

SQL> alter system set   LOG_ARCHIVE_DEST_2= 'service=DGB lgwr async   VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLES) DB_UNIQUE_NAME=DGB' scope=both;

SQL> alter system set   LOG_ARCHIVE_DEST_STATE_1=ENABLE scope=both;

SQL> alter system set   LOG_ARCHIVE_DEST_STATE_2=ENABLE scope=both;

SQL> alter system set   FAL_SERVER='DGZ' scope=both;

SQL> alter system set   STANDBY_FILE_MANAGEMENT=AUTO scope=both;

SQL> alter system set   DB_FILE_NAME_CONVERT='/u01/app/oracle/oradata/zky/','/u01/app/oracle/oradata/zky/'   scope=spfile;

SQL> alter system set   LOG_FILE_NAME_CONVERT='/u01/archive/','/u01/archive/' scope=spfile;

Linux6.4+Oracle11.2.0.4搭建DG

创建参数文件

创建参数文件供备库用

SQL> create pfile='/u01/zk.int' from spfile;

Linux6.4+Oracle11.2.0.4搭建DG


DG备服务器设置

复制文件

将密码文件和参数文件拷贝到DG备库对应的位置并赋予读写权限

[oracle@zhanky ~]$ scp   oracle@192.168.214.10:/u01/zk.int /u01/bk.int

[oracle@zhanky ~]$ scp   oracle@192.168.214.10:/u01/app/oracle/product/11.2.0/db_1/dbs/orapwzky   /u01/app/oracle/product/11.2.0/db_1/dbs/orapwzky

[oracle@zhanky ~]$ chmod 777   /u01/bk.int

[oracle@zhanky ~]$ chmod   777 /u01/app/oracle/product/11.2.0/db_1/dbs/orapwzky

Linux6.4+Oracle11.2.0.4搭建DG

创建文件夹

[oracle@zhanky /]$ mkdir -p   /u01/archive/

[oracle@zhanky /]$ mkdir -p   /u01/app/oracle/admin/zky/adump/

[oracle@zhanky /]$ mkdir -p   /u01/app/oracle/oradata/zky/

[oracle@zhanky /]$ mkdir -p   /u01/app/oracle/fast_recovery_area/zky/

Linux6.4+Oracle11.2.0.4搭建DG 

配置监听文件

配置静态监听,在listener.ora文件中添加静态监听

[oracle@zhanky ~]$ vi   /u01/app/oracle/product/11.2.0/db_1/network/admin/listener.ora

SID_LIST_LISTENER=

  (SID_LIST =

    (SID_DESC =

      (GLOBAL_DBNAME = zky)

      (ORACLE_HOME   =/u01/app/oracle/product/11.2.0/db_1)

      (SID_NAME = zky)

    )

  )

Linux6.4+Oracle11.2.0.4搭建DG

注意linux环境中更改侦听需要先stop在修改,不然会导致侦听服务无法正常启动关闭

配置TNS文件

配置tnsname.ora,设置DG主和DG备服务器监听

[oracle@zhanky ~]$ vi /u01/app/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora

DGZ =

  (DESCRIPTION =

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

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = zky)

    )

  )

DGB =

  (DESCRIPTION =

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

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = zky)

    )

  )

Linux6.4+Oracle11.2.0.4搭建DG

配置DG参数

将复制过来的参数文件更改下列红色标识的地方

[oracle@zhanky ~]$ vi   /u01/bk.int

db_unique_name=dgb scope=spfile;

LOG_ARCHIVE_CONFIG='DG_CONFIG=(DGZ,DGB)'   scope=both;

LOG_ARCHIVE_DEST_1='LOCATION=/u01/app/oracle/oradata/zky/   VALID_FOR=(ALL_LOGFILES,ALL_ROLES)    DB_UNIQUE_NAME=DGZ' scope=spfile;

LOG_ARCHIVE_DEST_2=   'service=DGB lgwr async   VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLES) DB_UNIQUE_NAME=DGB' scope=both;

FAL_SERVER='DGZ' scope=both;

完成更改后,进入数据库创建spfile,重启到nomount状态准备还原数据库

[oracle@zhanky /]$ sqlplus / as sysdba

SQL> create spfile from   pfile='/u01/bk.int';

SQL> startup nomount;

Linux6.4+Oracle11.2.0.4搭建DG

还原数据库

[oracle@zhanky ~]$ rman   target sys/manager@DGZ auxiliary sys/manager@DGB

RMAN> duplicate target   database for standby from active database nofilenamecheck;

Linux6.4+Oracle11.2.0.4搭建DG

提示:还原数据库要在nomount模式

 

DG配置

将库配置为standby库,开启到只读模式,开启实时应用日志。

SQL> shutdown immediate

SQL> startup nomount;

SQL> alter database mount standby   database;

SQL> alter database open read only;

SQL> alter database recover managed   standby database using current logfile disconnect from session;

Linux6.4+Oracle11.2.0.4搭建DG

测试DG同步

主库插入

SQL> create table zkydg as(select username   from dba_users where username='SYSTEM');

Linux6.4+Oracle11.2.0.4搭建DG

备库查询

SQL> select * from zkydg;

Linux6.4+Oracle11.2.0.4搭建DG


测试切换主备库

主库操作

SQL> alter database commit to   switchover to physical standby with session    shutdown;

SQL> startup nomount;

SQL> alter database mount standby   database;

SQL> alter database open read only;

SQL> alter database recover managed   standby database using current logfile disconnect from session;

 Linux6.4+Oracle11.2.0.4搭建DG

查看切换状态

SQL> select   switchover_status from v$database;

Linux6.4+Oracle11.2.0.4搭建DG

备库操作

SQL> alter database recover managed   standby database cancel;

SQL> alter database commit to   switchover to primary;

SQL> shutdown immediate

SQL> startup

Linux6.4+Oracle11.2.0.4搭建DG

测试切换是否成功DG同步

新主库插入

SQL>    create table zkydgqh as(select username from dba_users where   username='SYS');

Linux6.4+Oracle11.2.0.4搭建DG

老主库查询

SQL> select * from zkydgqh;

Linux6.4+Oracle11.2.0.4搭建DG


常用检查命令

查看切换状态

SQL> select   switchover_status from v$database;

Linux6.4+Oracle11.2.0.4搭建DG

查看是否同步

SQL> SELECT   SEQUENCE#,APPLIED FROM V$ARCHIVED_LOG ORDER BY SEQUENCE#;

Linux6.4+Oracle11.2.0.4搭建DG

强制切换为主库

         当主库挂了无法控制时,可直接在备库上强制接管数据库

SQL> RECOVER MANAGED   STANDBY DATABASE FINISH force;

 

SQL> shutdown immediate
SQL> startup nomount;
SQL> alter database mount standby   database;
SQL> alter database open read only;
SQL> alter database recover managed   standby database using current logfile disconnect from session;


--结束END--

本文标题: Linux6.4+Oracle11.2.0.4搭建DG

本文链接: https://www.lsjlt.com/news/50735.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Linux6.4+Oracle11.2.0.4搭建DG
    试验环境描述硬件信息本次测试环境使用的虚拟环境如下图所示,使用VMware Workstation 11搭建的两台Oracle Linux 6.4 64位操作系统,通过两台机器桥接到一块虚拟网卡。系统信息 ...
    99+
    2024-04-02
  • DG如何搭建
    这篇文章主要为大家展示了“DG如何搭建”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“DG如何搭建”这篇文章吧。 一、主库 1归档模式 SQL&...
    99+
    2024-04-02
  • DG Broker如何搭建
    这篇文章主要介绍了DG Broker如何搭建,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。DG Broker搭建 1.环境说明da...
    99+
    2024-04-02
  • Oracle DG如何搭建
    这篇文章主要为大家展示了“Oracle DG如何搭建”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Oracle DG如何搭建”这篇文章吧。Oracle DG搭建...
    99+
    2024-04-02
  • DG搭建之windos上搭建物理standby
    注:以下全部sql如果执行有误,请注意分号(;),转发文档请注明作者和出处。 ...
    99+
    2024-04-02
  • Linux 下 Oracle 11g DG搭建
    环境:模拟主库的创建 使用DBCA 启动图形界面 选项中的install option  --->选中create and configure a d...
    99+
    2024-04-02
  • Oracle DG搭建是怎样的
    这期内容当中小编将会给大家带来有关Oracle DG搭建是怎样的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Oracle DG搭建(冷备方式)(1) 主库:开启归档模式...
    99+
    2024-04-02
  • Oracle_lhr_CentOS 7.3 ECS上搭建RAC 18c+单实例DG+EMCC+DG
    Oracle_lhr_CentOS 7.3 ECS上搭建RAC 18c+单实例DG+EMCC+DG的FSFO快速故障转移配置 【大型连续免费公开课】Oracle 18c rac+dg+13.3的emcc部...
    99+
    2024-04-02
  • DG的搭建记录是怎样的
    DG的搭建记录是怎样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。 单实例DG搭建手册规划ipdb_named...
    99+
    2024-04-02
  • rhel6.4-11.2.0.3-RAC如何搭建单节点DG
    这篇文章主要为大家展示了“rhel6.4-11.2.0.3-RAC如何搭建单节点DG”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“rhel6.4-11.2.0....
    99+
    2024-04-02
  • 一步一步搭建11gR2 rac+dg之配置单实例的DG(八)
    RAC主库配置单实例ActiveDataguard ...
    99+
    2024-04-02
  • Oracle搭建物理DG的方法是什么
    这篇文章主要介绍“Oracle搭建物理DG的方法是什么”,在日常操作中,相信很多人在Oracle搭建物理DG的方法是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Orac...
    99+
    2024-04-02
  • Oracle RAC+DG环境搭建的方法是什么
    本篇内容主要讲解“Oracle RAC+DG环境搭建的方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Oracle RAC+DG环境搭建的方法是什么”吧...
    99+
    2024-04-02
  • Oracle RAC+DG环境搭建(CentOS 7+Oracle 12C)( 十) 部署 DataGuard
    一、配置主机   1. 设置主机名 hostnamectl set-hostname  DG   2. 配置网络 vim /e...
    99+
    2024-04-02
  • 怎么解决DG搭建后报错Warning: ORA-16824问题
    本篇内容介绍了“怎么解决DG搭建后报错Warning: ORA-16824问题”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅...
    99+
    2024-04-02
  • DG搭建常见问题处理的方法是什么
    这篇文章主要讲解了“DG搭建常见问题处理的方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“DG搭建常见问题处理的方法是什么”吧!1、ORA-0992...
    99+
    2024-04-02
  • ORACLE OCM备考OEM搭建DG报错:NMO not setuid-root(Unix-only)
         由于GridControl在我们DBA日常工作中不常用,对于一些OEM的报错比较陌生,例如:NMO not setuid-root(Unix-only)。但是,在OC...
    99+
    2024-04-02
  • 一步一步搭建oracle 11gR2 rac+dg之环境准备(二)
      一步一步在RHEL6.5+VMware Workstation 10上搭建 oracle 11gR2 rac + dg 之环境准备 (二) 本篇目录结构: ...
    99+
    2024-04-02
  • Oracle RAC+DG环境搭建(CentOS 7+Oracle 12C)(一)配置实验虚拟机
    一.  安装VirtualBox 1. 下载软件     6.0版本链接地址:  https://www.virtualbox.org/wiki...
    99+
    2024-04-02
  • oracle 11g如何构建physical DG
    小编给大家分享一下oracle 11g如何构建physical DG,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! ...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作