背景:

以前做的的一个项目中使用了某国产双机热备产品,但是在数据库做双机热备时出现了一些问题,没办法。不得不研究一番了!经过两天的研究终于问题得以解决。将问题处理步骤记录下来以备后用,也希望能帮助到需要的人。

首先介绍下我们的环境:

两台服务器

一个存储

两个双机热备软件

一、双击热备工作流程

在两台服务器上分别安装一个双机热备软件,并且两台服务器都挂载了存储,双机热备软件一直在监测两台服务器上配置的服务项是否正常,当监测到某台服务器上双机软件中配置的服务启动不了或者出现故障,双机软件自动切换另一台服务器上并启动双机软件配置的所有服务。

二、oracle数据库的双机搭建过程和问题

第一步:挂载存储至两台服务器上(例如两台服务器的挂载盘符为E盘);
第二步:在服务器A上安装oracle:将oracle安装文件安装在D盘下,数据文件安装在存储E盘上,安装完成后并将Oracle服务设置为手动;
第三步:关掉服务器A并进入服务器B:将服务器A安装在存储E盘的oracle的数据文件更改其他名称;
第四步:按照第二步的步骤在服务器B上安装oracle(需要注意的是B和A服务器安装Oracle的安装文件和数据文件路径必须完全一样);
第五步:在双机热备软件上配置oracle服务,并配置一个虚拟IP供外部访问,到时候应用软件只需连接该虚拟IP和端口就可以访问数据库了;
      以上是oracle双机的安装步骤,那样只是安装完成但是实际上是有隐患的,我这边就真正出现了,小伙伴们需要耐心看完就知道问题出在哪

三、问题现象

只要双机热备软件切换数据库那么整个数据库就宕了!无法启动;

四、问题原因

因为最初一个服务器A上Oracle正常运行的时候,Oracle控制文件已经记录下了该数据库运行的所有状态,当oracle双机切换到服务器B的时候,oracle监测到控制文件保存的状态和存储上的数据文件真实状态一不一致,那么自然数据库就不会切换到B上了。

五、解决方法

自定义初始化文件,并修改自定义的初始文件的配置内容,使得控制文件都加载的是存储上的控制文件用以保持两台服务器的控制文件和数据文件状态一致,并使两台服务器的数据库启动时都加载自定义的初始化文件,具体方法如下:

1、使用pl/sql dev 执行CREATE PFILE='C:\INIT.ORA' FROM SPFILE;语句,并且修改*.control_files参数到E盘下的控制文件,将生成的INIT.ORA复制到D:\app\mypfile\;

orcl.__db_cache_size=1946157056
orcl.__java_pool_size=67108864
orcl.__large_pool_size=16777216
orcl.__oracle_base=\'d:\\app\\Administrator\'#ORACLE_BASE set from environment
orcl.__pga_aggregate_target=1811939328
orcl.__sga_target=2717908992
orcl.__shared_io_pool_size=0
orcl.__shared_pool_size=654311424
orcl.__streams_pool_size=0
*.audit_file_dest=\'d:\\app\\Administrator\\admin\\orcl\\adump\'
*.audit_trail=\'db\'
*.compatible=\'11.2.0.0.0\'
*.control_files=\'e:\\app\\Administrator\\oradata\\orcl\\control01.ctl\',\'e:\\app\\Administrator\\oradata\\orcl\\control02.ctl\'
*.db_block_size=8192
*.db_domain=\'\'
*.db_name=\'orcl\'
*.db_recovery_file_dest=\'d:\\app\\Administrator\\flash_recovery_area\'
*.db_recovery_file_dest_size=4102029312
*.diagnostic_dest=\'d:\\app\\Administrator\'
*.dispatchers=\'(PROTOCOL=TCP) (SERVICE=orclXDB)\'
*.memory_target=4518313984
*.open_cursors=300
*.processes=150
*.remote_login_passwordfile=\'EXCLUSIVE\'
*.undo_tablespace=\'UNDOTBS1\'

2、编写sql脚本test.sql并将脚本放置到D:\app\mypfile\,内容:

connect / as sysdbashutdown immediatestartup pfile=\'D:\\app\\mypfile\\init.ora\';exit;

3、编写批处理脚本test.bat,内容:

sqlplus /nolog @D:\\app\\mypfile\\test.sql

4、这时候在双机热备软件中在oracle启动前添加test.bat,这样问题解决了;

 

转载于:https://www.cnblogs.com/zhengjinsheng/p/11269570.html

(技能篇)双机热备之Oracle切换故障处理相关推荐

  1. oracle12c双机热备方案,Oracle 共享磁盘阵列 双机热备 实战 配置教程 配置手册

    Oracle 11g共享存储双机热备配置手册 本文介绍 通过ServHA Cluster配置Oracle共享磁盘阵列双机容错集群. 主要步骤: 一.防火墙配置. 二.安装Oracle  11g. 三. ...

  2. Network 第九篇 - 双机热备-HSRP

    HSRP: hot standby routing protocol热备份路由协议(双机热备协议)-思科私有协议 VRRP - 公有标准,(将HSRP的配置命令中的standby,更改为vrrp,就可 ...

  3. oracle双机热备部署,Oracle双机热备配置步骤

    第一步 设置硬件 1.设置阵列柜为群集模式.(如果需要设置,需要咨询硬件厂商). 2.修改B机阵列卡的地址,默认的卡的地址一般为7.在没有修改之前不要同时把两台机器连接到阵列柜上开A和B机,否则有可能 ...

  4. linux 虚拟ip 双机,keepalived配置虚拟ip(vip)实现双机热备以及自动切换主备

    背景:为什么做这个事情,写这个文章 我们项目的域名指向的是172.22.90.239,但实际上我们没这台机器,这是个虚拟ip,只有172.22.90.230,请求239为什么实际指向的是230机器? ...

  5. oracle热备文档,Oracle双机热备方法

    Oracle双机热备方法 Oracle双机热备方法 Standby Database 创建Standby Database要求 1.Primary与standby数据库所在主机上的oracle ser ...

  6. 华为防火墙实现双机热备配置详解

    一提到防火墙,一般都会想到企业的边界设备,是内网用户与互联网的必经之路.防火墙承载了非常多的功能,比如:安全规则.IPS.文件类型过滤.内容过滤.应用层过滤等.也正是因为防火墙如此的重要,如果防火墙一 ...

  7. 双机热备篇 VRRP与VGMP的故事(2)

    上篇我们在学习了VRRP的实现原理,以及如何通过VGMP解决VRRP问题后,提出了两个问题.第一个问题是"两台防火墙的VGMP组是如何传递VGMP的优先级信息的?".答案是防火墙的 ...

  8. oracle单机架构变双机,oracle双机热备架构方案

    oracle双机热备架构方案 双机热备有两种实现模式,一种是基于共享的储备设备的方式,另一种是没有共享的储备设备的方式,一样称为纯软件方式. 基于储备共享的双机热备是双机热备的最标准方案. 关于这种方 ...

  9. 【Nginx】如何基于主从模式搭建Nginx+Keepalived双机热备环境?这是最全的一篇了!!

    写在前面 最近出版了<海量数据处理与大数据技术实战>,详情可以关注 冰河技术 微信公众号,查看<我的<海量数据处理与大数据技术实战>出版啦!>一文. 也有不少小伙伴 ...

最新文章

  1. java B2B2C springmvc mybatis多租户电子商城系统(三):服务提供与调用
  2. 2022年美国大学生数学建模竞赛各题型常见参考代码汇总
  3. EPSON 机器人多任务下的互锁处理
  4. Strange Partition CodeForces - 1471A
  5. 如何看创建媒体日期_汽车各零部件也有身份证,教你们如何看这些部件的出生日期...
  6. C函数实现返回多个值的方法
  7. python集合中的元素是否可以重复_python列表--查找集合中重复元素的个数
  8. python优先级排序_Python 列表排序
  9. PMSM FOC控制 Matlab/Simulink仿真之Clark变换
  10. jira -workflow之父级任务关注人copy到子任务
  11. [三维视频融合]智慧安防解决方案
  12. 什么是HTTPDNS?HTTPDNS有哪些作用?
  13. 计算机考研高数试卷答案,考研数学试卷大全(全国各高校历年试卷)
  14. H3C_RIP_路由器_动态路由
  15. 【mac】No Xcode or CLT version detected!解决办法
  16. 【原创】积性函数和狄利克雷卷积学习笔记 未完成
  17. Quaternion-based Kalman Filtering on INS/GPS
  18. Featuretools快速使用指南--看这一篇就够了
  19. cygwin 查找ip地址_NBtscan扫描整个局域网IP及MAC地址
  20. 固态硬盘装win7系统(win8、win10基本同理唯一不同就是程序用的安装镜像不同)

热门文章

  1. mysql grant教程_MySQL如何使用授权命令grant
  2. java发送get post请求_【工具】java发送GET、POST请求
  3. getlab如何编辑提交时显示的用户名_GitHub 如何让你的提交显示被校验
  4. nginx屏蔽服务器类型信息,简单的禁止CURL 访问服务器nginx
  5. oracle连接的内存,简单查看oracle的连接情况和内存使用情况 -电脑资料
  6. crc32库 qt_Qt 打包32位库(包括WebEngineView)
  7. 【Vulnhub靶机系列】DC3
  8. C库函数 - strcspn()
  9. 学习quot;平衡二叉树quot;之摘录
  10. 《网易编程题》下厨房