asm的启动依赖
原文http://blog.sina.com.cn/s/blog_70a2bdb80100xdth.html
[grid@vm11gr2] /home/grid> sqlplus "/as sysasm"
SQL*Plus: Release 11.2.0.1.0 Production on Sun Oct 25 10:16:21 2009
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup
ORA-01078: failure in processing system parameters
ORA-29701: unable to connect to Cluster Synchronization Service
SQL>
无法连接到CSS服务上.到操作系统上检查一下看看
[grid@vm11gr2] /home/grid> crsctl check css
CRS-4530: Communications failure contacting Cluster Synchronization Services daemon
[grid@vm11gr2] /home/grid>
[grid@vm11gr2] /home/grid> ps -ef|grep cssd
果然没有CSS的服务daemon进程,再看一下HAS(High Availability Service)的状态
[grid@vm11gr2] /home/grid> crsctl check has
CRS-4638: Oracle High Availability Services is online
[grid@vm11gr2] /home/grid> ps -ef|grep d.bin
grid 5886 1 0 10:06 ? 00:00:01 /u01/app/grid/product/11.2/grid/bin/ohasd.bin reboot
[grid@vm11gr2] /home/grid>
发现HAS的服务确实启动了的,而ora.cssd和ora.diskmon这2个服务是依赖于HAS维护的.
进一步查看各资源的状态
[grid@vm11gr2] /home/grid> crs_stat -t
Name Type Target State Host
--------------------------------------------------------------
ora.FLASH_DATA.dg ora.diskgroup.type OFFLINE OFFLINE vm11gr2
ora.SYS_DATA.dg ora.diskgroup.type OFFLINE OFFLINE vm11gr2
ora.asm ora.asm.type OFFLINE OFFLINE vm11gr2
ora.cssd ora.cssd.type OFFLINE OFFLINE vm11gr2
ora.diskmon ora.diskmon.type OFFLINE OFFLINE vm11gr2
[grid@vm11gr2] /home/grid>
[grid@vm11gr2] /home/grid> crsctl status resource -t
--------------------------------------------------------------------------------
NAME TARGET STATE SERVER STATE_ DETAILS
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.FLASH_DATA.dg
OFFLINE OFFLINE vm11gr2
ora.SYS_DATA.dg
OFFLINE OFFLINE vm11gr2
ora.asm
OFFLINE OFFLINE vm11gr2
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.cssd
1 OFFLINE OFFLINE
ora.diskmon
1 OFFLINE OFFLINE
再看一下ora.cssd和ora.diskmon的属性
[grid@vm11gr2] /home/grid> crs_stat -p ora.cssd
NAME=ora.cssd
TYPE=ora.cssd.type
ACTION_SCRIPT=
ACTIVE_PLACEMENT=0
AUTO_START=never
CHECK_INTERVAL=30
DESCRIPTION="Resource type for CSSD"
FAILOVER_DELAY=0
FAILURE_INTERVAL=3
FAILURE_THRESHOLD=5
HOSTING_MEMBERS=
PLACEMENT=balanced
RESTART_ATTEMPTS=5
SCRIPT_TIMEOUT=600
START_TIMEOUT=600
STOP_TIMEOUT=900
UPTIME_THRESHOLD=1m
[grid@vm11gr2] /home/grid> crs_stat -p ora.diskmon
NAME=ora.diskmon
TYPE=ora.diskmon.type
ACTION_SCRIPT=
ACTIVE_PLACEMENT=0
AUTO_START=never
CHECK_INTERVAL=20
DESCRIPTION="Resource type for Diskmon"
FAILOVER_DELAY=0
FAILURE_INTERVAL=3
FAILURE_THRESHOLD=5
HOSTING_MEMBERS=
PLACEMENT=balanced
RESTART_ATTEMPTS=10
SCRIPT_TIMEOUT=60
START_TIMEOUT=60
STOP_TIMEOUT=60
UPTIME_THRESHOLD=5s
[grid@vm11gr2] /home/grid>
到这里基本就找到了原因了,可以看到这两个资源的AUTO_START属性默认都设置为never,也就是说他们不会随着HAS服务的启动而自动启动的,
尽管默认情况下HAS服务是开机自动启动的.好了,那我们就手动启动一下吧:
[grid@vm11gr2] /home/grid> crsctl start resource ora.cssd
CRS-2672: Attempting to start 'ora.cssd' on 'vm11gr2'
CRS-2679: Attempting to clean 'ora.diskmon' on 'vm11gr2'
CRS-2681: Clean of 'ora.diskmon' on 'vm11gr2' succeeded
CRS-2672: Attempting to start 'ora.diskmon' on 'vm11gr2'
CRS-2676: Start of 'ora.diskmon' on 'vm11gr2' succeeded
CRS-2676: Start of 'ora.cssd' on 'vm11gr2' succeeded
[grid@vm11gr2] /home/grid>
注:ora.cssd和ora.diskmon这两个服务是有依赖关系的,启动哪个都会把两个都起来.
[grid@vm11gr2] /home/grid> crs_stat -t
Name Type Target State Host
--------------------------------------------------------------
ora.FLASH_DATA.dg ora.diskgroup.type OFFLINE OFFLINE vm11gr2
ora.SYS_DATA.dg ora.diskgroup.type OFFLINE OFFLINE vm11gr2
ora.asm ora.asm.type OFFLINE OFFLINE vm11gr2
ora.cssd ora.cssd.type ONLINE ONLINE vm11gr2
ora.diskmon ora.diskmon.type ONLINE ONLINE vm11gr2
[grid@vm11gr2] /home/grid>
CSS服务起来了,重启动asm instance
[grid@vm11gr2] /home/grid> sqlplus "/as sysasm"
SQL*Plus: Release 11.2.0.1.0 Production on Sun Oct 25 10:30:03 2009
Copyright (c) 1982, 2009, Oracle. All rights reserved.
Connected to an idle instance.
SQL> startup
ASM instance started
Total System Global Area 284565504 bytes
Fixed Size 1336036 bytes
Variable Size 258063644 bytes
ASM Cache 25165824 bytes
ASM diskgroups mounted
SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
With the Automatic Storage Management option
[grid@vm11gr2] /home/grid> crs_stat -t
Name Type Target State Host
--------------------------------------------------------------
ora.FLASH_DATA.dg ora.diskgroup.type ONLINE ONLINE vm11gr2
ora.SYS_DATA.dg ora.diskgroup.type ONLINE ONLINE vm11gr2
ora.asm ora.asm.type ONLINE ONLINE vm11gr2
ora.cssd ora.cssd.type ONLINE ONLINE vm11gr2
ora.diskmon ora.diskmon.type ONLINE ONLINE vm11gr2
[grid@vm11gr2] /home/grid>
tips
1)默认情况下HAS(High Availability Service)是自动启动的.通过如下命令可以取消和启用自动启动
crsctl disable has
crsctl enable has
2)HAS手动启动和停止
crsctl start has
crsctl stop has
3)查看HAS的状态
crsctl check has
4)如果想让ora.css和ora.diskmon服务随着HAS的启动而自动启动,那么你可以这两个服务的AUTO_START属性
crsctl modify resource "ora.cssd" -attr "AUTO_START=1"
or
crsctl modify resource "ora.diskmon" -attr "AUTO_START=1"
5)如果想取消ora.css和ora.diskmon的Auto start
crsctl modify resource "ora.cssd" -attr "AUTO_START=never"
crsctl modify resource "ora.diskmon" -attr "AUTO_START=never"
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?