1.启动数据库报错:ORA-01102:cannot mount database in EXCLUSIVE mode

给客户处理oracle故障,遇到如下报错:

以sys登录至数据库,执行shutdown immediate; startup;命令报错如下:

数据库默认以独占(EXCLUSIVE)方式启动,发生ORA-01102错误可能有如下因素

(1)在"ORACLE_HOME/dbs"的目录下是否存在sgadef.dbf文件

(2)在"ORACLE_HOME/dbs"的目录下是否存在文件lk<实体名>

解决方法

(1)以oracle用户的身份登录至系统或使用其它身份登录至系统切换至oracle用户

#xshell方法登录:ssh oracle@IP地址
#如果是已经使用其它用户登录,请切换至oracle
[admin@maple ~]$ su - oracle #如是普通用户登录切换,需要输入oracle的密码

(2)查看数据库有几个实例

[oracle@maple ~]$ ps -ef|grep lgwr

(3)使用sys登录至数据库

[oracle@maple ~]$ sqlplus / as sysdba
SQL> show parameter name;
SQL> select open_mode from v$database;

(4)如果"ORACLE_HOME/dbs"的目录下存在sgadef.dbf文件,请先备份,再将此文件删除。待问题解决后,再建议将此文件的备份给删除

#ORACLE_HOME=/ora/oracle/produce/11.2.0/db_1
[oracle@maple ~]$ ls /ora/oracle/produce/11.2.0/db_1/dbs/sgadef* #查看是否有sgadef<sid>.dbf文件
#如果查询到有此文件,请先备份,再删除,或者直接使用mv命令改名
[oracle@maple ~]$ cd /ora/oracle/produce/11.2.0/db_1/dbs
[oracle@maple ~]$ mv sgadef<sid>.dbf sgadef<sid>.dbf.bak

(5)如果"ORACLE_HOME/dbs"的目录下存在文件lk<实体名>,则需要如下操作

#ORACLE_HOME=/ora/oracle/produce/11.2.0/db_1
[oracle@maple ~]$ ls /ora/oracle/produce/11.2.0/db_1/dbs/lk* #查看是否有lk<实体名>文件
#如果存在此文件,则使用如下方法
[oracle@maple ~]$ fuser -u lk<实体名> #查看lk<实体名>文件是否是oracle用户启动
[oracle@maple ~]$ fuser -k lk<实体名> #结束掉lk<实体名>

(6)在oracle用户下,启动监听,再使用sysplus登录,启动数据库服务

[oracle@maple ~]$ lsnrctl start
[oracle@maple ~]$ sqlplus / as sysdba
SQL>startup

Oracle数据库故障处理方法的更多相关文章

  1. [C#.Net]C#连接Oracle数据库的方法

    首先介绍下开发环境:WIn10 64bit+Visual Studio 2015+Oracle10ClientWin32(只是客户端,如果安装整个数据库也是可以的) 目前了解C#中连接Oracle数据 ...

  2. C#连接Oracle数据库的方法(Oracle.DataAccess.Client也叫ODP.net)

    官方下载地址(ODP.net)(中文):http://www.oracle.com/technetwork/cn/topics/dotnet/downloads/index.html 官方下载地址(O ...

  3. LOADRUNNER连接ORACLE数据库的方法

    LOADRUNNER连接ORACLE数据库的方法     最近正在做一个测试数据库性能的项目,直接写出来的连接数据库并且进行数据库查询和插入的脚本在VUSER_INIT中(连接数据库)#include ...

  4. 用ASP.Net(C#)连接Oracle数据库的方法及实例

    今天看了一下asp.net连接oracle数据库的方法,得到了如下代码.这段代码打开了MyTable表,并把操作员的名字列出.字段类型是OracleString.读取的时候用的是字段编号,我不知道怎么 ...

  5. phalcon: 解决php7/phalcon3.2以上版本,不支持oracle数据库的方法

    解决php7/phalcon3.2以上版本,不支持oracle数据库的方法 phalcon3.2(3.0以上)版本不支持oracle的方法. https://github.com/phalcon/in ...

  6. C#连接Oracle数据库的方法(System.Data.OracleClient、Oracle.DataAccess.Client也叫ODP.net、Oracle.ManagedDataAccess.dll)

    官方下载地址(ODP.net)(中文):http://www.oracle.com/technetwork/cn/topics/dotnet/downloads/index.html 官方下载地址(O ...

  7. C#连接Oracle数据库的方法

    目前了解C#中连接Oracle数据库的方法有3种,分布是微软的System.Data.OracleClient,Oracle的Oracle.DataAccess.Client和Oracle的Oracl ...

  8. VS2010下连接Oracle数据库的方法

    在vs2010下使用OleDB连接Oracle数据库 ——此方法不需要配置数据源. 1. 在“服务器资源管理器”中,选择“数据库连接”,右击,选择“添加连接”. 2. 出现下面的界面,并按图中选择“用 ...

  9. 从服务器将Oracle数据库导出到本地Oracle数据库的方法

     1.将服务器上的Oracle数据库导入到本地 在CMD模式下执行以下命令:   exp username1/password@服务器端数据库 file=本地硬盘:/文件名.dmp   例如: exp ...

随机推荐

  1. 3A限流IC,带短路保护,PW1503和PW1502

    一般说明 PW1503,PW1502是超低RDS(ON)开关,具有可编程的电流限制,以保护电源源于过电流和短路保护.它具有超温保护以及反向闭锁功能. PW1503,PW1502采用薄型(1毫米)5针薄 ...

  2. 图解 ECDHE 密钥交换算法

    HTTPS 常用的密钥交换算法有两种,分别是 RSA 和 ECDHE 算法. 其中,RSA 是比较传统的密钥交换算法,它不具备前向安全的性质,因此现在很少服务器使用的.而 ECDHE 算法具有前向安全 ...

  3. history附上时间戳,history命令_Linux history命令:查看和执行历史命令

    起因是这样的,一台机器客户反馈连接不上,说没有任何操作.好吧,排查吧. 1.第一步先看网络是否通: 从图中可以看到一开始是一直不通的.然后就通了,问了客户有没操作重启什么的结果说没有任何操作,还让给个 ...

  4. jQuery 自动生成二维码

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta http ...

  5. has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.

    前端显示: has been blocked by CORS policy: Response to preflight request doesn't pass access control che ...

  6. 一致性哈希算法C#实现

    一致性hash实现,以下实现没有考虑多线程情况,也就是没有加锁,需要的可以自行加上.因为换行的问题,阅读不太方便,可以拷贝到本地再读. 1 /// <summary> 2 /// 一致性哈 ...

  7. 从零开始学Java (五)条件选择

    if switch while do while for break continue 这块对于有语言基础的人来说可以跳过了. 注意有个equals方法. 1 public class Main { ...

  8. Python 2.x 和 Python 3.x

    Python 2.x 默认不支持中文,具体原因,等到介绍 字符编码 时给大家讲解 Python 2.x 的解释器名称是 python Python 3.x 的解释器名称是 python3 目前市场上有 ...

  9. Webpack4.0各个击破(5)module篇

    一. 模块化乱炖 脚本合并是基于模块化规范的,javascript模块化是一个非常混乱的话题,各种[*MD]规范乱飞还要外加一堆[*.js]的规范实现.现代化前端项目多基于框架进行开发,较为流行的框架 ...

  10. php中一种单引号逃逸造成的注入

    demo如下: $post = $_POST; $sql=''; $array['name'] = $post['name']; $array['age'] = 18; $array['addr'] ...