由于公司系统升级需要,所有win2003服务器都必需升级到win2008,旧的数据库需要进行迁移。由于之前没接触过Oracle,为配置集群折腾了一星期有余,总算将最简单的双节点冷备集群弄出来了。现如下总结。

目录

  • 目录
  • 安装前准备
  • 安装
  • 安装后任务
  • 排错检查
    • FS-10220
    • FS-11004

安装前准备

Oracle的产品线之长令人咋舌,版本多得让人眼花缭乱。在准备正式开始之前,最好检查一下版本兼容性(需要My Oracle Support):

  • Oracle Database Server support Matrix for XXX (适合2003及以前版本操作系统)
  • Certification Information for Oracle Database on Microsoft Windows x64 (64-bit) (Doc ID 1307195.1):

    Windows Vista, 7, Server 2008, and Server 2008 R2:
    Do not install Oracle Database 10g Release 2 on Windows Server 2008, Server 2008 R2, 7, nor Vista using the 10.2.0.1 version. You must use the 10.2.0.4 (64-bit) x64 version specifically created for these operating systems. After installation, for Windows 7 and Windows Server 2008 R2, patchset 10.2.0.5 or higher must be applied. For more information …

OFS有3本手册,都不大,建议都看看。

  • Release Notes
  • Installation Guide
  • Administration Guide
  • Error Messages
  • Tutorial

[ ofs3.4.2doc ]

安装

  1. 步骤如下:
  2. 安装系统
  3. 安装FailOver群集功能
  4. 创建集群(可选)
  5. 安装Oracle 10.2.0.4[^footnote].
  6. 打上10.2.0.5 patchset
  7. 打上8350262 em补丁
  8. 安装OFS3.4.2
  9. 如果没有进行第四步,那么创建Cluster后需要运行fssvrsec.bat这个脚本才能将OracleMSCSServices添加到Cluster Group中

微软群集

群集原理相当简单,就是当一个节点失败时将群集资源(VIP,共享磁盘,服务)转移到别的机子上.

安装后任务

假如前面一切顺利,那么安装完成后应该是这样:

先用系统的群集管理工具创建一个群集MSCSTS,然后运行Oracle Fail Safe Manager

实验环境是4个共享盘。DISK1是仲裁盘。
然后Create Group,最后会出现:

点击YES,然后创建一个VIP和HOSTNAME,结果:

这跟在群集管理器中创建不一样。HOSTNAME也不能不填,也不会自动在域中注册!而不创建VIP下面就无法继续下去。
不得已只能在群集管理器中创建了。然后将资源ONLINE:

Create Sample Database,做个样例:

从输出可以看到对LISTENER.ORA和TNSNAMES.ORA修改了

示例数据库LISTENER.ORA

#
# This file is written by Oracle Services For MSCS
# on Tue Mar 03 06:43:46 2015
#
LISTENER =(DESCRIPTION_LIST= (DESCRIPTION= (ADDRESS= (PROTOCOL=TCP)(HOST=192.168.121.151)(PORT=1521))(ADDRESS= (PROTOCOL=IPC)(KEY=EXTPROC0))))SID_LIST_LISTENER =(SID_LIST=(SID_DESC=(SID_NAME=PLSExtProc)(ORACLE_HOME=C:\oracle\product\10.2.0\db_1)(PROGRAM=extproc))(SID_DESC=(SID_NAME=OFS1)))

示例数据库TNSNAMES.ORA

#
# This file is written by Oracle Services For MSCS
# on Tue Mar 03 06:43:48 2015
#
TDB =(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(Host=192.168.121.151)(Port=1521)))(CONNECT_DATA=(SID=OFS1)))
EXTPROC_CONNECTION_DATA =(DESCRIPTION= (ADDRESS_LIST= (ADDRESS= (PROTOCOL=IPC)(KEY=EXTPROC0)))(CONNECT_DATA= (SID=PLSExtProc)(PRESENTATION=RO)))

因为后台用的工具是DBCA,所以会自动添加LISTENER注册和TNSNAME。
下面将这个数据库加到集群中:

文本框基本都是填好的,这里就填个SYS密码就行了。

最后一个高可用冷备资源组就完成了:

最终的配置文件内容:
群集LISTENER.ORA

#
# This file is written by Oracle Services For MSCS
# on Wed Mar 04 02:41:09 2015
#
LISTENER =(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(Host=192.168.11.151)(Port=1521)))Fsltdbn =(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=OFS1))(ADDRESS=(PROTOCOL=IPC)(KEY=TDBG))(ADDRESS=(PROTOCOL=TCP)(Host=192.168.111.245)(Port=1521)))SID_LIST_Fsltdbn =(SID_LIST=(SID_DESC=(SID_NAME=OFS1)))

群集TNSNAMES.ORA

#
# This file is written by Oracle Services For MSCS
# on Wed Mar 04 02:41:15 2015
#
TDBG =(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(Host=192.168.111.245)(Port=1521)))(CONNECT_DATA=(SID=OFS1)))

排错检查

用工具创建是相当傻瓜化的,有好也有不好。流程顺利的话用工具是最简便的做法;不顺利的话出错根本找不着北。在官方Guide文档中推荐用Verify Group和Verify Cluster来检验问题。但本人建议先清楚OFS到底做了什么,再去检验才有价值。那么下面是需要检查的部分:

确认OracleMSCSServices已添加进Cluster Group并Online:OracleMSCSServices是OFS用来管理群集的服务,跟随群集组运行。如果不小心删除了,可以通过运行开始菜单中的Oracle Services for MSCS Security Setup重新配置。

要是在MSCS中没有Oracle TNS ListenerOracle Dtabase的资源类型,那么可以手动注册下面几个文件:

File Type Description
FsResOdbs.dll Oracle Database, Oracle TNS Listener, and Oracle resource type DLL file Provides functions to allow the cluster to bring an Oracle resource online or offline and check the health of the resource through Is Alive polling. When the resource is online, the Oracle resource DLL guarantees that the resource is accessible by the client. Otherwise, the Is Alive polling fails.
FsResOdbsEx.dll Oracle Database resource administration extension DLL file Used by MSCS Cluster Administrator to display the properties of the Oracle Database resource.
FsResTnsLsnrEx.dll Oracle TNS Listener resource extension DLL file Used by MSCS Cluster Administrator to display the properties of the Oracle TNS Listener resource.

To register the Oracle Database resource DLL files, use the following commands:
fssvr /register "Oracle Database" FsResOdbs.dll
fssvr /register "Oracle TNS Listener" FsResOdbs.dll
To unregister the Oracle Database resource DLL files, use the following commands:
fssvr /unregister "Oracle Database"
fssvr /unregister "Oracle TNS Listener"
To register the Oracle Database resource administrator extension DLL files on the
cluster nodes, use the following commands:
fsregadm /r FsResOdbsEx.dll
fsregadm /r FsResTnsLsnrEx.dll
To unregister the Oracle Database resource administrator extension DLL files on the
cluster nodes, use the following commands:
fsregadm /u FsResOdbsEx.dll
fsregadm /u FsResTnsLsnrEx.dll

FS-10220:

FS-10220: Network name maps to IP address in the cluster resource but maps to IP address on the system
在OFS里VIP一栏是灰色的,也就是不能修改。一般想修改VIP会想到三个地方:

  • MSCS
  • LISTENER.ORA
  • local_listener

修改完成Verify Group会产生FS-10220的错误。这是因为系统解析网络名跟Cluster里IP资源地址不一致导致的。一般是因为DNS和系统DNSCACHE没更新。用NSLOOKUP查看DNS记录是否更新,然后在每个NODE上运行ipconfig /flushdns

FS-11004

FS-11004: Message 11004 not found; product=OracleFailSafe; facility=FS
这条错误难以理解,但原理似乎是因为网络名未在DNS注册。在MSCS里新增接入点需要ONLINE一下才能注册上去。

Oracle 10.2.0.5 + OFS 3.4.2 双节点集群相关推荐

  1. Oracle 10.2.0.5.4 Patch Set Update (PSU) – Patch No: p12419392

    有关Oracle patch和PSU,PSR 说明参考我的blog: Oracle 补丁体系 及opatch 工具 介绍 http://blog.csdn.net/tianlesoftware/art ...

  2. oracle 10.2 64位,Oracle 10.2.0.5 x64升级到11.2.0.3 x64

    说明:11g数据库现在新部署的数量也很多的,对于10g数据库,现在整理一下10g到11g的升级过程.10.2.0.2以上版本才能升级到11.2.0.3版本. 升级说明:10.2.0.5(64)-> ...

  3. aix oracle 10.2.0.1 升级 10.2.0.4,安装oracle 10.2.0.4 on aix 6.1的不同之处

    根据Oracle Database Installation Guide 10g Release 2 (10.2) for AIX 5L Based Systems (64-Bit)文档,在AIX 6 ...

  4. oracle数据库装不成功,oracle 10.2.0.4安装 创建数据库时 em不成功需要大的补丁

    建议:先安装oracle 10.2.0.4 数据库软件 后手动创建数据库 oracle patch 为 8350262_10204 报错信息如下: 2011-03-09 11:06:10 Thread ...

  5. Oracle 10.2.0.4和10.2.0.5 中 OEM bug 8350262

    一. Bug 问题表现 2011年安装Oracle 10.2.0.4 和10.2.0.5 版本时,在配置OEM的时候会报错. 忽略这个错误后,DB 可以成功创建或者升级. MOS 上关于这个bug的说 ...

  6. oracle10.2.0.5漏洞,Oracle 10.2.0.5 opatch报错

    Linux redhat 5 Oracle 10.2.0.5 执行opatch lsinventory报错: [oracle@rac2 8350262]$ opatch lsinventory Inv ...

  7. 手动升级oracle,ORACLE 10.2.0.1手动升级到10.2.0.4

    ORACLE 10.2.0.1手动升级到10.2.0.4 1.解压zip包以及查看目录权限 p6810189_10204_Linux-x86-64.zip oracle@single-10g:/u01 ...

  8. RAC分解步骤之一,在oracle linux 4u4上安装oracle 10.2.0.1.0操作日志

    练习oracle的rac组建过程,第一步,先练习4u4上安装oracle 10.2.0.1.0.直接安装rac,有些难度.从简单的做起.总RAC步骤,参照小布老师的RAC组建. 1. 启动vc,登陆v ...

  9. Oracle 10.2.0.4 高负载 触发 ORA-00494 错误

    MOS 上有一篇文章专门介绍这个问题,参考:[ID 779552.1]. 在Oracle 10.2.0.4版本中,alert log 可能出现如下错误: ORA-00494:enqueue [CF] ...

最新文章

  1. oracle scott用户
  2. 串—KMP算法(详细)
  3. 精通CSS+DIV基础总结(三)
  4. 基于MATLAB的LDPC编译码仿真,调制为64QAM
  5. 北京计算机在职研究生双证学校,北京在职研究生目前有哪些学校开设了双证专业?...
  6. 打印页面横向怎么设置_条码打印软件标签纸页面设置的方法
  7. Python断言方法:assert
  8. python 二进制数 转字符串_Python二进制串转换为通用字符串的方法
  9. STM32 - 定时器的设定 - 基础 01 - Timer Base - Prescaler description - Upcounting mode
  10. td 超出宽度隐藏_table中td文字超出长度用省略号隐藏超出内容,鼠标点击内容全部显示...
  11. django 1.8 官方文档翻译: 2-5-10 数据库函数
  12. 使用SpringBoot+JPA报错Incorrect syntax near 'hibernate_sequence'
  13. C语言学习笔记---时间函数ctime()和gmtime()
  14. 机器视觉对印刷业的影响
  15. MySql字符串拼接
  16. 取消一个项目git版本控制
  17. 红米手机Pro超简单刷入开发版获得ROOT超级权限的步骤
  18. 【UEFI实战】HII之uni文件
  19. win7 IIS服务发布网站
  20. 关于阿里云个人网站备案流程的介绍

热门文章

  1. Mysql DBA(一)
  2. 小白必看 APN/证书/越狱等名词详解
  3. 【genius_platform软件平台开发】第七十三讲:linux系统驱动开发之-中断处理之DSB指令
  4. css样式 元素自适应长宽比
  5. BUG生命周期和管理
  6. python菜鸟教程 | print功能
  7. sem学习的内容sem学习步骤sem适合的人群
  8. 甲骨文CEO独家揭秘企业转型秘诀,就一个字
  9. 【LeetCode每日一题】1723. 完成所有工作的最短时间
  10. 判断三角形的性质(直角或等腰)简便算法