- 最后登录
- 2015-3-25
- 在线时间
- 37 小时
- 威望
- 42
- 金钱
- 391
- 注册时间
- 2012-2-14
- 阅读权限
- 10
- 帖子
- 68
- 精华
- 0
- 积分
- 42
- UID
- 222
|
3#
发表于 2012-6-1 09:13:08
从启动过程日志来看:asm是由oraagent来启动,并且是启动asm后,mount所有diskgroup
oraagent:
2012-05-29 16:42:27.722: [ AGFW][1092651328] {0:0:2} ora.asm 1 1 state changed from: UNKNOWN to: STARTING
......
2012-05-29 16:42:27.769: [ora.asm][1124170048] {0:0:2} [start] ConfigFile::setAltValue altValue = /orasoft/app/grid/11.2.0:N
2012-05-29 16:42:27.775: [ora.asm][1124170048] {0:0:2} [start] AsmAgent:getOracleSid 2 oracle_sid =
2012-05-29 16:42:27.775: [ora.asm][1124170048] {0:0:2} [start] AsmAgent:getOracleSid 4 oracle_sid =
2012-05-29 16:42:27.776: [ora.asm][1124170048] {0:0:2} [start] Node 0 doesn't exist
2012-05-29 16:42:27.776: [ora.asm][1124170048] {0:0:2} [start] AsmAgent::getOracleSid: Exception IntException
2012-05-29 16:42:27.776: [ora.asm][1124170048] {0:0:2} [start] AsmAgent::getOracleSidAttrib getCssNodeName Error: Agents: clssnsqlnum ret = 12:
2012-05-29 16:42:27.776: [ora.asm][1124170048] {0:0:2} [start] AsmAgent:getOracleSid 5 oracle_sid = +ASM2
2012-05-29 16:42:27.776: [ora.asm][1124170048] {0:0:2} [start] AsmAgent:getOracleSid oracle_sid = +ASM2
2012-05-29 16:42:27.776: [ora.asm][1124170048] {0:0:2} [start] ConfigFile::getAltEntry altEntry = +ASM2
2012-05-29 16:42:27.776: [ora.asm][1124170048] {0:0:2} [start] ConfigFile::getValue name +asm2 value /orasoft/app/grid/11.2.0:N
2012-05-29 16:42:27.776: [ora.asm][1124170048] {0:0:2} [start] sUpdateOratab entry exists with dbName +ASM2 value /orasoft/app/grid/11.2.0:N
2012-05-29 16:42:27.781: [ora.asm][1124170048] {0:0:2} [start] makeConnectStr = (DESCRIPTION=(ADDRESS=(PROTOCOL=beq)(PROGRAM=/orasoft/app/grid/11.2.0/bin/oracle)(ARGV0=oracle+ASM2)(ENVS='ORACLE_HOME=/orasoft/app/grid/11.2.0,ORACLE_SID=+ASM2')(ARGS='(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))'))(CONNECT_DATA=(SID=+ASM2)))
2012-05-29 16:42:28.729: [ora.mdnsd][1096853824] {0:0:2} [check] clsdmc_respget return: status=0, ecode=0
2012-05-29 16:42:30.496: [ora.asm][1124170048] {0:0:2} [start] InstAgent::startup
2012-05-29 16:42:30.997: [ora.gpnpd][1090550080] {0:0:2} [check] clsdmc_respget return: status=0, ecode=0
2012-05-29 16:42:32.064: [ora.gipcd][1096853824] {0:0:2} [check] clsdmc_respget return: status=0, ecode=0
2012-05-29 16:42:42.613: [ora.asm][1124170048] {0:0:2} [start] InstConnection::connectInt: server not attached
2012-05-29 16:42:42.705: [ora.asm][1124170048] {0:0:2} [start] AsmAgent::startCbk: {
2012-05-29 16:42:42.705: [ora.asm][1124170048] {0:0:2} [start] AsmAgent::startCbk mount stmt ALTER DISKGROUP ALL MOUNT /* asm agent call crs *//* {0:0:2} */ enable stmt ALTER DISKGROUP ALL ENABLE VOLUME ALL /* asm agent *//* {0:0:2} */
2012-05-29 16:42:42.705: [ora.asm][1124170048] {0:0:2} [start] AsmAgent::startCbk: ALTER DISKGROUP ALL MOUNT /* asm agent call crs *//* {0:0:2} */
2012-05-29 16:42:50.220: [ora.asm][1124170048] {0:0:2} [start] AsmAgent::startCbk: ALTER DISKGROUP ALL ENABLE VOLUME ALL /* asm agent *//* {0:0:2} */
.....
2012-05-29 16:42:50.502: [ AGFW][1124170048] {0:0:2} Command: start for resource: ora.asm 1 1 completed with status: SUCCESS
ASM alert日志:
Tue May 29 16:42:35 2012
NOTE: No asm libraries found in the system
* instance_number obtained from CSS = 2, checking for the existence of node 0...
* node 0 does not exist. instance_number = 2
Starting ORACLE instance (normal)
****************** Huge Pages Information *****************
Huge Pages memory pool detected (total: 51200 free: 51200)
DFLT Huge Pages allocation successful (allocated: 0)
***********************************************************
LICENSE_MAX_SESSION = 0
LICENSE_SESSIONS_WARNING = 0
ASM启动时spfile到底如何读取的呢?在启动ASM前,所有磁盘组是没有mount的
ASM Spfile Is Not Used when ASM Instance Starts Even It Exists Inside of OCR Diskgroup (11.2) [ID 1384692.1]
好像给出了答案:
Based on Oracle documentation, when an Oracle ASM instance searches for an initialization parameter file, the search order is:
1. The location of the initialization parameter file specified in the GridPlug and Play (GPnP) profile
2. If the location has not been set in the GPnP profile, then the search order changes to:
- SPFILE in the Oracle ASM instance home
$ORACLE_HOME/dbs/spfile+ASM.ora
- PFILE in the Oracle ASM instance home
前面Gpnp里指定了启动asm时的spfile,这篇文档里提到了以下一点:
One of the reason why ASM not able to find the SPFILE could be because of "ERROR: -5(Duplicate disk OCR_VOTE:OCR_VOTE_0001)" and ASM is using default parameter settings.
相关日志:
NOTE: No asm libraries found in the system
ERROR: -5(Duplicate disk OCR_VOTE:OCR_VOTE_0001) <---
* instance_number obtained from CSS = 1, checking for the existence of node 0...
* node 0 does not exist. instance_number = 1
Starting ORACLE instance (normal)
LICENSE_MAX_SESSION = 0
LICENSE_SESSIONS_WARNING = 0
Private Interface ... configured from GPnP for use as a private interconnect.
...
Public Interface ... configured from GPnP for use as a public interface.
...
Using LOG_ARCHIVE_DEST_1 parameter default value as /u01/app/11.2.0/grid/dbs/arch
Autotune of undo retention is turned on.
LICENSE_MAX_USERS = 0
SYS auditing is disabled
NOTE: Volume support enabled
Starting up:
Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
With the Real Application Clusters and Automatic Storage Management options.
WARNING: using default parameter settings without any parameter file <-----
所以我猜测:ASM是直接读相关磁盘的数据块,这通过kfed来查看CRSDG的0号AU的0号块来查kfdhdb.f1b1locn,得到FILEDIR的AU
ASM的参数文件号应该是固定的,具体多少号没研究,通过查看FILEDIR的AU里的相关块,就找到SPFILE的AU
这个基本上就跟读祼盘的spfile一致了。 |
|