ORA-01102:cannot mount database in exclusive mode
原创
©著作权归作者所有:来自51CTO博客作者user_xiaoxi的原创作品,请联系作者获取转载授权,否则将追究法律责任
这个问题的根本
发现是lk<SID>文件造成的,该文件位于ORALCE_HOME下的dbs目录下,检查该文件:
[oracle@vincent dbs]$ fuser -u lk<SID>
lkVINCENT: 5466(oracle) 5531(oracle) 28419(oracle) 28421(oracle) 28423(oracle) 28425(oracle) 28427(oracle) 28429(oracle) 28431(oracle) 28433(oracle) 28435(oracle) 28437(oracle) 28439(oracle) 28460(oracle) 28560(oracle) 29479(oracle)
[root@qa-oracle dbs]# fuser -k lk<SID>SQL> startup mount
ORACLE instance started.
Total System Global Area
285212672 bytes
Fixed Size 1218992 bytes
Variable Size 92276304 bytes
Database Buffers 188743680 bytes
Redo Buffers 2973696 bytes
Database mounted.
数据库成功OPEN.
当发生1102错误时,可以按照以下流程检查、排错:
1.如果是HA系统,检查其他节点是否已经启动实例;
2.检查Oracle进程是否存在,如果存在则杀掉进程;
3.检查信号量是否存在,如果存在,则清除信号量;
4.检查共享内存段是否存在,如果存在,则清除共享内存段;
5.检查锁内存文件lk<sid>和sgadef<sid>.dbf是否存在,如果存在,则删除。