环境:oracle linux 6.8
ORACLE: 112040 双机
故障描述:数据库可以正常使用,在双节点上运行asmcmd时提示Connected to an idle instance.
[grid@node1 ~]$ asmcmd
Connected to an idle instance.
ASM进程都在
[grid@node1 ~]$ ps -ef|grep asm
grid 2268 31322 0 17:07 pts/2 00:00:00 grep asm
grid 23964 1 0 Jan05 ? 00:01:39 asm_pmon_+ASM1
grid 23966 1 0 Jan05 ? 00:01:21 asm_psp0_+ASM1
grid 23970 1 1 Jan05 ? 02:34:37 asm_vktm_+ASM1
grid 23974 1 0 Jan05 ? 00:00:13 asm_gen0_+ASM1
grid 23976 1 0 Jan05 ? 00:05:40 asm_diag_+ASM1
grid 23978 1 0 Jan05 ? 00:00:45 asm_ping_+ASM1
grid 23980 1 0 Jan05 ? 00:51:22 asm_dia0_+ASM1
grid 23984 1 0 Jan05 ? 00:15:19 asm_lmon_+ASM1
grid 23986 1 0 Jan05 ? 00:09:37 asm_lmd0_+ASM1
grid 23988 1 0 Jan05 ? 00:20:06 asm_lms0_+ASM1
grid 23992 1 0 Jan05 ? 00:00:30 asm_lmhb_+ASM1
grid 23994 1 0 Jan05 ? 00:00:14 asm_mman_+ASM1
grid 23996 1 0 Jan05 ? 00:00:14 asm_dbw0_+ASM1
grid 23998 1 0 Jan05 ? 00:00:15 asm_lgwr_+ASM1
grid 24000 1 0 Jan05 ? 00:00:47 asm_ckpt_+ASM1
grid 24002 1 0 Jan05 ? 00:00:11 asm_smon_+ASM1
grid 24004 1 0 Jan05 ? 00:02:12 asm_rbal_+ASM1
grid 24006 1 0 Jan05 ? 00:00:42 asm_gmon_+ASM1
grid 24008 1 0 Jan05 ? 00:00:48 asm_mmon_+ASM1
grid 24010 1 0 Jan05 ? 00:06:14 asm_mmnl_+ASM1
grid 24014 1 0 Jan05 ? 00:00:59 asm_lck0_+ASM1
grid 24066 1 0 Jan05 ? 00:00:11 asm_asmb_+ASM1
grid 24068 1 0 Jan05 ? 00:00:35 oracle+ASM1_asmb_+asm1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
oracle 24479 1 0 Jan05 ? 00:00:14 ora_asmb_prod1
grid 24483 1 0 Jan05 ? 00:00:35 oracle+ASM1_asmb_prod1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))
.bash_profile内容:
[grid@node1 ~]$ cat .bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
ORACLE_HOME=/g01/grid/app/11.2.0/grid
ORACLE_BASE=/g01/grid/app/grid
ORACLE_SID=+ASM1
PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin
NLS_LANG=AMERICAN_AMRICA.ZHS16GBK
export PATH ORACLE_HOME ORACLE_BASE ORACLE_SID NLS_LANG
[grid@node1 ~]$ echo $ORACLE_SID
+ASM1
后来在一网友指导下进sqlplus查看ASM是不是真的起来了才发现问题
[grid@node1 ~]$ sqlplus / as sysasm (进去之后show parameter name)
很不幸,在这一步的时候报错了,不过很幸运,这就是问题所在。
ORA12705:cannot access NLS data file or invalid environment specified
- -无法访问NLS数据文件。
后来在网上查看这个报错原因,有个解释是不能在bash_profile里面指定NLS
找到bash_profile文件,把这行注释后,重新打开CRT窗口,发现报错没有了。
--出现实例连接不上的原因论坛的描述多数是$ORACLE_SID或者$ORACLE_HOME路径出错,出现此问题的同学可以多检查下.bash_profile文件
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29618264/viewspace-2132387/
,如需转载,请注明出处,否则将追究法律责任。