ora_01102 cannot mount database in EXCLUSIVE mode

ora_01102 cannot mount database in EXCLUSIVE mode

1
$ sqlplus /nolog
1
2
3
4
5
6
7
8
SQL> startup
ORACLE instance started.
Total System Global Area 1.7103E+10 bytes
Fixed Size 2243608 bytes
Variable Size 8455717864 bytes
Database Buffers 8623489024 bytes
Redo Buffers 21712896 bytes
ORA-01102: cannot mount database in EXCLUSIVE mode

ORA-1102 错误原因:
1、在ORACLE_HOME/dbs/存在 “sgadef.dbf” 文件或者lk 文件。这两个文件是用来用于锁内存的。
2、oracle的 pmon,smon,lgwr and dbwr等进程未正常关闭。
3、数据库关闭后,共享内存或者信号量依然被占用。
lk说明DATABASE 已经是MOUNT状态了,不用再次MOUNT。当 DATABASE 被UNMOUNT 后会被自动删除,如果DATABASE没有MOUNT,却依然存在这个问题,只有手工将其删除。

具体解决ORA-01102问题的步骤:
1、关闭数据库

1
$ sqlplus /nolog

1
2
SQL> conn /as sysdba 
SQL> shutdown immediate

2、删除$ORACLE_HOME/dbs/下的lk开头文件
3、切换到root,查看oracle进程,强行杀掉ora_lgwr_orcl的进程号

1
2
$ps -ef|grep oracle
$kill -9 34565

除了掌声,您的支持是最大的鼓励!
0%