`
beagoodboy
  • 浏览: 97050 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

修改主机名后如何启动使用ASM存储的数据库

阅读更多
最近修改一台安装了ASM实例以及基于ASM存储的数据库主机名(RHEL 5),当启动ASM实例的时候,出现了如下的报错信息
[oracle@dev112 ~]$ export ORACLE_SID=+ASM
[oracle@dev112 ~]$ sqlplus / as sysdba
SQL> startup
ORA-29701: unable to connect to Cluster Manager

当查看系统进程时,可以发现OCSSD进程没有运行
[root@dev112 ~]# ps -ef | grep cssd
root      4936     1 0 09:07 ?        00:00:00 /bin/sh /etc/init.d/init.cssd run
root      2430 2365 0 11:49 ?        00:00:00 /bin/sh /etc/init.d/init.cssd startcheck
root      5623 4836 0 09:14 pts/0    00:00:00 grep cssd

OCSSD进程启动后正常的进程应当包含
oracle    2878 2781 0 22:30 ?        00:00:00 /u01/oracle/product/10.2/bin/ocssd.bin

根据ASM实例启动报错信息以及系统进程信息,我们可以确定ASM实例无法启动这是由于OCSSD进程在修改主机名后无法正常启动的原因。

什么是OCSSD
OCSSD是Oracle Cluster Synchronization Service Daemon的缩写,有的文档也将它认为是Oracle Cluster Support Services Daemon的缩写,这只是文档的不一致而已。从名称可以得知,OCSSD将实现一些系统集群所需要的功能,具体地,它负责实现Oracle数据库实例与ASM实例之间的通讯。当ASM实例启动以后,通过GMON进程和OSCCD通信,将ASM的一些信息告诉OCSSD,而数据库则从OCSSD获得这些信息。

在单机上,通过执行$ORACLE_HOME/bin/localconfig add即可以安装OCSSD,在这个过程中,OCR(Oracle Cluster Registry)将被创建。OCR包含了集群节点列表、实例到节点的映射信息以及集群提供给应用程序的资源概要。之后,OCSSD进程的启动是通过/etc/inittab(Linux)中如下的一行记录。
h1:35:respawn:/etc/init.d/init.cssd run >/dev/null 2>&1 </dev/null

启动后OCSSD进程将打开一些文件描述符,包括消息文件、日志文件、OCR文件、本地文件系统套接字、网络套接字这几种类型。

OCSSD为何无法启动
当查看OCSSD的启动控制脚本/etc/init.d/init.cssd时,可以看到它使用/bin/logger将日志记录到了系统日志中,那么我们先来查看一下系统日志。
[root@dev112 ~]# more /var/log/message
Nov 25 11:49:54 dev112mod logger: Oracle Cluster Ready Services starting up automatically.
Nov 25 11:49:56 dev112mod logger: Cluster Ready Services waiting on dependencies. Diagnostics in /tmp/crsctl.2430.

查看上述中的/tmp/crsctl.2430文件
[root@dev112 ~]# more /tmp/crsctl.2430
Failure in CSS initialization opening OCR.

这是/etc/init.d/init.cssd脚本的startcheck选项在执行$ORACLE_HOME/bin/crsctl check boot时出错而产生的,这个错误就是因为修改了主机名而导致OCR的失效,OCR默认的保存位置是$ORACLE_HOME/cdata/localhost/local.ocr。这个时候,就需要重新创建新的OCR,在单机环境中,可以使用$ORACLE_HOME/bin/localconfig reset命令。
具体操作
在Oracle安装用户下确定ORACLE_HOME值
# su - oracle
$ echo $ORACLE_HOME
/u01/oracle/product/10.2

切换到root用户,重新配置OCSSD进程
$ su - root
$ /u01/oracle/product/10.2/bin/localconfig reset

之后就可以正常启动ASM实例和数据库了。

参考
[1] How an ASM diskgroup is found by the database.
http://frits.homelinux.com/wordpress/?p=34
[2] Oracle数据库如何识别ASM磁盘组
http://www.ningoo.net/html/2008/how_an_asm_diskgroup_found_by_oracle_database.html
[3] Modifying the VIP or VIP Hostname of a 10g or 11g Oracle Clusterware Node
http://space.itpub.net/12361284/viewspace-616738
分享到:
评论

相关推荐

    创建oracle10g asm数据库step by step

    6. **ASM数据库的简单测试**:启动后,应进行简单的读写测试,验证ASM的条带化和镜像功能是否按预期工作,以及数据分布是否均匀。 #### 总结 通过以上步骤,不仅实现了Oracle 10g数据库的创建,更重要的是,通过...

    ORACLE 数据库从AIX裸设备到ASM存储的迁移过程

    ### ORACLE 数据库从AIX裸设备到ASM存储的迁移过程 #### 概述 本文主要介绍了Oracle数据库从AIX裸设备迁移到ASM(自动存储管理)存储的过程。这一迁移通常涉及从传统的直接连接存储(DAS)或网络附加存储(NAS)等裸设备...

    Oracle RAC增加ASM盘,创建表空间

    ASM 盘是 Oracle RAC 中的一个关键组件,用于存储数据库的数据文件、日志文件和控制文件等。 在本文中,我们将介绍如何在 Oracle RAC 中增加 ASM 盘,并创建表空间。实验环境为虚拟机软件 Oracle VirtualBox 4.3.8...

    单机使用ASM技术构建11gR2数据库单机环境.doc

    总结来说,构建11gR2数据库单机环境需要对操作系统进行适当的配置,安装必要的软件包,设置用户和环境变量,配置ASM存储,安装GRID基础设施,最后安装数据库并调整相关参数。这个过程需要对Oracle数据库和Linux系统...

    工程日志数据库迁移到asm.doc

    - 使用`smit vg`命令启动卷组管理界面,然后创建名为asmvg的卷组,这是ASM磁盘组的基础。 - 在AIX系统中,卷组(Volume Group)是逻辑卷管理器(LVM)的一部分,用于组织物理磁盘以创建逻辑卷。 5. **ASM配置**:...

    centos6.4 安装 oracle12c 单实例 asm

    本篇教程将详细介绍如何在CentOS 6.4操作系统上安装Oracle 12c数据库的单实例版本,并使用自动存储管理(ASM)。 首先,安装Oracle数据库之前,需要对系统环境进行全面的检查,确保操作系统满足Oracle 12c的安装...

    Redhat AS4 Oracle10g+ASM单实例转RAC

    2. 系统内核版本及主机名:确认Redhat AS4的操作系统内核版本符合Oracle 10g RAC的要求,并设置清晰的主机名,便于集群间通信。 3. 网卡:配置至少两块网卡,分别用于私有Interconnect和公共网络,保证节点间的高效...

    Oracle 11g rac +ASM安装手册

    这包括检查各个服务是否正常启动、ASM存储是否正常工作以及数据库实例是否可以正常创建和访问。 在进行Oracle 11g RAC + ASM安装时,可能会遇到各种各样的问题,例如依赖包缺失、配置文件错误、网络配置不正确等。...

    linux上实战raw+asm+rman

    2. **修改主机名**:使用`vi /etc/sysconfig/network`编辑主机名。 3. **创建软链接**:例如,使用`ln -s /lib/lsb /usr/lj`创建指向`/lib/lsb`目录的符号链接。 完成上述步骤后,即可开始安装Oracle 10G软件和...

    Oracle数据库从aix裸设备到ASM存储的迁移过程.pdf

    - 目标恢复服务器(crm_bk):同样是IBM Power550,IP地址为130.x.x.130,计划使用ASM存储数据库文件。 - 存储设备:源存储为USP-VM,目标存储为DMX1000。 2. **禁用并导出卷组**: - 在迁移前,需要禁用所有相关...

    Red Hat Enterprise Linux 6使用udev配置Oracle ASM总结文档

    Oracle自动存储管理器(ASM)是Oracle数据库的存储解决方案,能够简化存储管理,并提高大型数据库的性能和可用性。在Red Hat Enterprise Linux 6(RHEL6)这样的Linux操作系统环境中部署ASM时,常常会遇到系统重启后...

    oracle11g_asm_for_aix实施方案

    ASM (Automatic Storage Management) 是一种高度自动化的存储管理系统,专为 Oracle 数据库设计。它可以提供高性能、高可用性和易于管理的特点。对于 AIX 平台,采用以下方法管理 ASM 磁盘: 1. **创建和管理磁盘组...

    Windows Server 2008 R2 X64环境下搭建双网络Oracle 12C R1 RAC+ASM.pdf

    1. 项目介绍:本项目的目标是在两台服务器上构建Oracle 12c R1的RAC(Real Application Clusters)集群数据库,并搭配使用ASM(Automatic Storage Management)管理存储。这涉及到对高可用性数据库环境的规划和实施...

    oracle asm

    Oracle ASM,全称为Automatic Storage Management,是Oracle数据库中的一种存储管理技术。ASM提供了一种集中的、自动化的磁盘管理方式,它简化了存储管理,包括磁盘的创建、管理和故障恢复。在Oracle数据库环境中,...

    oracle数据库安装手册

    通过URL `http://hostname:5500/em` 登录EM,其中`hostname`是运行Oracle数据库服务器的主机名或IP地址。 3. **SYS用户登录与操作界面** 使用SYS用户登录后,操作界面分为多个功能模块,如主目录、性能、管理和...

    suse使用udev管理asm.docx

    - **主机名与IP地址配置**:为了实现高可用性集群,每个节点都需要配置至少三个网络接口,包括心跳网络、客户端网络和存储网络。文档中显示了如何配置`/etc/hosts`文件,其中包括了每个节点的多个IP地址。 - **安装...

    Oracle 11gR2 RAC + ASM on AIX-6.1安装指导手册

    配置DNS以便解析集群内的主机名,确保网络通信的顺畅。 1.4.3 NTP服务器 同步所有节点的时钟,以避免因时间不一致导致的集群问题。 1.5 存储规划 ASM提供了一种自动化的存储管理方式,简化了Oracle数据库的存储...

    Oracle 11g RAC ASM安装部署手册

    4. 网络配置:在两台机器上配置至少两个网卡,设置静态IP地址,并且在/etc/hosts文件中添加对应的IP地址和主机名,以确保节点之间能够通过主机名进行通信。 ***和SCAN IP的作用:手册中提到的VIP(Virtual IP)和...

    构建最高可用Oracle数据库系统 Oracle 11gR2 RAC管理、维护与性能优化

    第4章 ASM存储软件 4.1 ASM简介 4.1.1 ASM的特点 4.1.2 ASM实例的功能 4.2 ASM磁盘组 4.2.1 ASM磁盘 4.2.2共享ASM磁盘组 4.2.3 ASM逻辑结构 4.2.4 ASM故障组 4.2.5 ASM条带化 4.3 ASM文件 4.3.1 ASM文件...

Global site tag (gtag.js) - Google Analytics