oracle数据库故障处理,Oracle数据库故障处理方法

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

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

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

sql_question-383231.html

数据库默认以独占(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;

sql_question-383231.html

(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.dbf文件

#如果查询到有此文件,请先备份,再删除,或者直接使用mv命令改名

[oracle@maple ~]$ cd /ora/oracle/produce/11.2.0/db_1/dbs

[oracle@maple ~]$ mv sgadef.dbf sgadef.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

sql_question-383231.html

sql_question-383231.html

Oracle数据库故障处理方法

标签:tab   结束   报错   dba   sys   启动数据库   直接   查看   fuser

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉 本文系统来源:https://www.cnblogs.com/Heroge/p/13197305.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值