ORA-01102: cannot mount database in EXCLUSIVE mode

今天在fedora上安装完10g后,测试数据库是否安装成功。STARTUP数据库时,发生如下错误:

[plain] view plaincopyprint?

  1. SQL> conn /as sysdba

  2. Connected to an idle instance.

  3. SQL> startup

  4. ORACLE instance started.

  5. Total System Global Area  591396864 bytes

  6. Fixed Size                   1220724 bytes

  7. Variable Size             167776140 bytes

  8. Database Buffers         415236096  bytes

  9. Redo Buffers                 7163904 bytes

  10. ORA-01102: cannot mount database in EXCLUSIVE mode

  11. SQL> shutdown immediate

  12. ORA-01507: database not mounted

  13. ORACLE instance shut down.

SQL> conn /as sysdba
Connected to an idle instance.
SQL> startup
ORACLE instance started.
Total System Global Area  591396864 bytes
Fixed Size                   1220724 bytes
Variable Size             167776140 bytes
Database Buffers         415236096  bytes
Redo Buffers                 7163904 bytes
ORA-01102: cannot mount database in EXCLUSIVE mode
SQL> shutdown immediate
ORA-01507: database not mountedORACLE instance shut down.

出现ORA-1102错误可能有以下几种可能:

一、在HA系统中,已经有其他节点启动了实例,将双机共享的资源(如磁盘阵列上的裸设备)占用了;

二、说明Oracle被异常关闭时,有资源没有被释放,一般有以下几种可能,

1、 Oracle的共享内存段或信号量没有被释放;

2、 Oracle的后台进程(如SMON、PMON、DBWn等)没有被关闭;

3、 用于锁内存的文件lk<sid>和sgadef<sid>.dbf文件没有被删除。

第一点,可以通过在备节点上查数据库状态来判断是否已启动实例。
第二点,如果系统是因为断电引起数据库宕机的,并且系统在接电被重启后,我们可以排除第二种可能的1、2点。接下来考虑第3点。

查$ORACLE_HOME/dbs目录:

[plain] view plaincopyprint?

  1. [oracle@localhost dbs]$ ls sgadef*

  2. ls: cannot access sgadef*: No such file or directory

  3. [oracle@localhost dbs]$ ls lk*

  4. lkORCL

  5. [oracle@localhost dbs]$

[oracle@localhost dbs]$ ls sgadef*
ls: cannot access sgadef*: No such file or directory
[oracle@localhost dbs]$ ls lk*
lkORCL
[oracle@localhost dbs]$

lk<sid>文件没有被删除。将它删除掉

[plain] view plaincopyprint?

  1. [oracle@localhost dbs]$ rm lkORCL

[oracle@localhost dbs]$ rm lkORCL

再启动数据库,成功。

如果是Oracle进程没有关闭,用以下命令查出存在的oracle进程:

[plain] view plaincopyprint?

  1. [root@localhost dbs]# ps -ef|grep oracle

  2. root      <SPAN class=skype_c2c_print_container>2310  2358  0 16</SPAN><SPAN dir=ltr class=skype_c2c_container tabIndex=-1 skype_menu_props='{"numberToCall":"+8623102358016","isFreecall":false,"isMobile":false,"isRtl":false}'><SPAN dir=ltr class=skype_c2c_highlighting_inactive_common skypeaction="skype_dropdown"><SPAN class=skype_c2c_textarea_span><IMG class=skype_c2c_logo_img alt="" src="resource://skype_ff_extension-at-jetpack/skype_ff_extension/data/call_skype_logo.png"><SPAN class=skype_c2c_text_span>2310  2358  0 16</SPAN><SPAN class=skype_c2c_free_text_span></SPAN></SPAN></SPAN></SPAN>:00 pts/0    00:00:00 su - oracle

  3. oracle    <SPAN class=skype_c2c_print_container>2311  2310  0 16</SPAN><SPAN dir=ltr class=skype_c2c_container tabIndex=-1 skype_menu_props='{"numberToCall":"+8623112310016","isFreecall":false,"isMobile":false,"isRtl":false}'><SPAN dir=ltr class=skype_c2c_highlighting_inactive_common skypeaction="skype_dropdown"><SPAN class=skype_c2c_textarea_span><IMG class=skype_c2c_logo_img alt="" src="resource://skype_ff_extension-at-jetpack/skype_ff_extension/data/call_skype_logo.png"><SPAN class=skype_c2c_text_span>2311  2310  0 16</SPAN><SPAN class=skype_c2c_free_text_span></SPAN></SPAN></SPAN></SPAN>:00 pts/0    00:00:00 -bash

  4. root      <SPAN class=skype_c2c_print_container>2427  2403  0 10</SPAN><SPAN dir=ltr class=skype_c2c_container tabIndex=-1 skype_menu_props='{"numberToCall":"+8624272403010","isFreecall":false,"isMobile":false,"isRtl":false}'><SPAN dir=ltr class=skype_c2c_highlighting_inactive_common skypeaction="skype_dropdown"><SPAN class=skype_c2c_textarea_span><IMG class=skype_c2c_logo_img alt="" src="resource://skype_ff_extension-at-jetpack/skype_ff_extension/data/call_skype_logo.png"><SPAN class=skype_c2c_text_span>2427  2403  0 10</SPAN><SPAN class=skype_c2c_free_text_span></SPAN></SPAN></SPAN></SPAN>:47 pts/1    00:00:00 su - oracle

  5. ……

[root@localhost dbs]# ps -ef|grep oracle
root      2310  2358  0 162310  2358  0 16:00 pts/0    00:00:00 su - oracle
oracle    2311  2310  0 162311  2310  0 16:00 pts/0    00:00:00 -bash
root      2427  2403  0 102427  2403  0 10:47 pts/1    00:00:00 su - oracle
……

然后用kill -9命令杀掉进程

$kill -9 <PID>

总结:

当发生1102错误时,可以按照以下流程检查、排错:

1.如果是HA系统,检查其他节点是否已经启动实例;

2.检查Oracle进程是否存在,如果存在则杀掉进程;

3.检查信号量是否存在,如果存在,则清除信号量;

4.检查共享内存段是否存在,如果存在,则清除共享内存段;

5.检查锁内存文件lk<sid>和sgadef<sid>.dbf是否存在,如果存在,则删除。

转载于:https://blog.51cto.com/aixuexi/1415051

【oracle案例】ORA-01102: cannot mount database in EXCLUSIVE mode .相关推荐

  1. oracle数据库启动cannot mount database in EXCLUSIVE mode

    启动oracle数据库,提示cannot mount database in EXCLUSIVE mode,开始没有注意,启动监听器也无法启动, 网络查询提示有程序占用进程 进行oracle用户下: ...

  2. ORACLE报错(5)ORA-01102: cannot mount database in EXCLUSIVE mode

    ORACLE报错(5)ORA-01102: cannot mount database in EXCLUSIVE mode SQL> conn /as sysdba Connected to a ...

  3. ORA-01102: cannot mount database in EXCLUSIVE mode

    今天在STARTUP一数据库时,发生如下错误: [oracle@bogon ~]$ sqlplus "/as sysdba" SQL*Plus: Release 11.2.0.1. ...

  4. cannot mount database in EXCLUSIVE mode

    http://blog.csdn.net/xyz846/article/details/6684638

  5. oracle 增加ora容量_案例:Oracle报错ORA-01144 详解数据文件大小32GB的限制的原因

    天萃荷净 Oracle数据文件大小的限制,运维DBA在向Oracle数据库添加一个32G的数据文件的时候报错ORA-01144,分析原因为数据库针对文件有32G限制 1.添加数据文件报错ORA-011 ...

  6. Oracle 11g 使用duplicate from active database 创建物理ADG

    1.概述: 之前使用冷备的方式搭建了一个物理ADG环境,但是由于冷备需要停库.因此在一些大型库上使用这种技术就不怎么实用了,而使用duplicatefrom active database则必免了这种 ...

  7. 【oracle】oracle经典sql,exception,database link纠错

    [oracle]oracle经典sql,exception,database link纠错 1111-01 oracle经典sql,exception,database link纠错 1.给表tabl ...

  8. oracle 触发器登录,【学习笔记】Oracle触发器 实现指定用户登录oracle案例

    天萃荷净 触发器实现指定用户登录oracle,分享一篇关于Oracle数据库安全策略,通过Oracle触发器实现限定user用户登录Oracle数据库的方法 1.创建允许登录用户表 CREATE TA ...

  9. oracle 11g安装时设密码 database control,安装oracle 11g 保护Database Control时出错,Database Control已在非安全模式下启动...

    错误解决: 打开cmd C:\Users\lin>emctl status dbconsole Environment variable ORACLE_UNQNAME not defined. ...

最新文章

  1. 状态压缩dp(hdu2662)(我综合了一个人的解释和另一个人的代码)
  2. SD-WAN:MSP连接
  3. lnmp一键安装脚本
  4. linux 进程 ctrl-c,ctrl-z,ctrl-d
  5. Docker 的优势
  6. python 迭代器
  7. 详解 GNU C 标准中的 typeof 关键字
  8. 计算机控制课程设计体会,计算机控制技术课程设计报告
  9. jupyter生成数据集
  10. Caffe 之 使用非图片的鸢尾花(IRIS)数据集(hdf5格式) 训练网络模型
  11. 打开方式更改为计算机程序,Lnk打开方式被修改 快捷方式被其他应用程序强制关联...
  12. C++ Primer 第5版--练习10.35
  13. 硬盘缓存作用是什么,缓存是不是越大越好?
  14. 能ping通ip但无法ping通域名和localhost //ping: bad address 'www.baidu.com'
  15. python绘制contourf填色图,数值超出色条设定的范围时出现空白区域
  16. [HNOI2004]打鼹鼠 简单DP
  17. 微信小程序之兼容问题
  18. ​predis操作大全​
  19. golang浅拷贝与深拷贝
  20. ubuntu桌面便签_指标 – Stickynotes是您的Ubuntu桌面的粘滞便笺应用程序 | MOS86

热门文章

  1. LODOP使用问题解决汇总
  2. mysql 查看索引命中_请问下如何在Mysql中where与orderBy后在命中索引?
  3. cmake取消宏定义_Excel基础丨取消excel中宏安全提示框
  4. php 注入是什么意思,如何理解ThinkPHP框架里的依赖注入?
  5. 边缘检测robert原理_机器视觉尺寸检测基础
  6. my-innodb-heavy-4G.cnf 配置文件参数介绍
  7. Spring中解决事务以及异步注解失效
  8. [小结]InnoDB体系结构及工作原理
  9. php插入一个自增字段,thinkphp-自增或自减一个字段的值
  10. python sys模块_Python 基础(二十):sys 模块