Oracle数据库故障处理方法
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数据库故障处理方法的更多相关文章
- [C#.Net]C#连接Oracle数据库的方法
首先介绍下开发环境:WIn10 64bit+Visual Studio 2015+Oracle10ClientWin32(只是客户端,如果安装整个数据库也是可以的) 目前了解C#中连接Oracle数据 ...
- C#连接Oracle数据库的方法(Oracle.DataAccess.Client也叫ODP.net)
官方下载地址(ODP.net)(中文):http://www.oracle.com/technetwork/cn/topics/dotnet/downloads/index.html 官方下载地址(O ...
- LOADRUNNER连接ORACLE数据库的方法
LOADRUNNER连接ORACLE数据库的方法 最近正在做一个测试数据库性能的项目,直接写出来的连接数据库并且进行数据库查询和插入的脚本在VUSER_INIT中(连接数据库)#include ...
- 用ASP.Net(C#)连接Oracle数据库的方法及实例
今天看了一下asp.net连接oracle数据库的方法,得到了如下代码.这段代码打开了MyTable表,并把操作员的名字列出.字段类型是OracleString.读取的时候用的是字段编号,我不知道怎么 ...
- phalcon: 解决php7/phalcon3.2以上版本,不支持oracle数据库的方法
解决php7/phalcon3.2以上版本,不支持oracle数据库的方法 phalcon3.2(3.0以上)版本不支持oracle的方法. https://github.com/phalcon/in ...
- 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 ...
- C#连接Oracle数据库的方法
目前了解C#中连接Oracle数据库的方法有3种,分布是微软的System.Data.OracleClient,Oracle的Oracle.DataAccess.Client和Oracle的Oracl ...
- VS2010下连接Oracle数据库的方法
在vs2010下使用OleDB连接Oracle数据库 ——此方法不需要配置数据源. 1. 在“服务器资源管理器”中,选择“数据库连接”,右击,选择“添加连接”. 2. 出现下面的界面,并按图中选择“用 ...
- 从服务器将Oracle数据库导出到本地Oracle数据库的方法
1.将服务器上的Oracle数据库导入到本地 在CMD模式下执行以下命令: exp username1/password@服务器端数据库 file=本地硬盘:/文件名.dmp 例如: exp ...
随机推荐
- Log4j日志记录
1.导入log4j的jar包 2.写log4j.properties文件,配置日志记录参数,一般参数如下所示: 第二行指定了输出日志的目录,此处用的相对路径,也可换成绝对路径: 第三行指定了输出的记录 ...
- 【译】Async/Await(三)——Aysnc/Await模式
原文标题:Async/Await 原文链接:https://os.phil-opp.com/async-await/#multitasking 公众号: Rust 碎碎念 翻译 by: Praying ...
- 1.2V转3V芯片,电路图很少就三个元件
1.2V的镍氢电池由于稳定高,应用产品也是很广,但是由于电压低,需要1.2V转3V芯片,来将1.2V的电压升压转3V,稳定输出供电. 一般性的1.2V转3V芯片,都是用PW5100比较多,固定输出电压 ...
- uni-app开发经验分享十九: uni-app对接微信小程序直播
uni-app对接微信小程序直播 1.登录微信小程序后台-点击>设置->第三方设置->添加直播插件 2.添加直播组件后->点击<详情> 记录这两个参数直播 ...
- 订阅者模式,公众号、B站、快手用了都说好!
大家好,今天和大家来聊一个新的设计模式--订阅者模式. 这个模式在我们的生活当中非常常见,可以说是几乎所有的媒体平台都用或多或少地用到了这个模式.比如公众号,我们来仔细梳理一下公众号这个平台当中的整个 ...
- cfsetispeed、cfsetospeed和cfsetspeed探究
在我https://www.cnblogs.com/Suzkfly/p/11055532.html这篇博客中有一个疑问,就是在串口设置波特率的域中,没有将输入输出波特率分开,那为什么会有几个不同的设置 ...
- 解决JavaScript中构造函数浪费内存的问题!
解决JavaScript中构造函数浪费内存的问题! 把构造函数中的公共的方法放到构造函数的原型对象上! // 构造函数的问题! function Gouzaohanshu(name, age, gen ...
- 无法获取 vmci 驱动程序版本: 句柄无效。 驱动程序 vmci.sys 版本不正确。请尝试重新安装 VMware Workstation。 打开模块DevicePowerOn电源失败。
1.别打开电源,然后到虚拟机安装文件夹内.2.找到你的虚拟机系统文件中后缀为vmx的文件,右击用记事本或者Notepad++打开.2.搜索找到vmci0.present='TRUE',字段,把true ...
- (02)-Python3之--列表(list)操作
1.定义 列表的关键字:list 列表以[]括起来,数据之间用 , 隔开.列表当中的数据,可以是任意类型.数值是可以重复的. 列表元素是 可变的,顺序是 有序的. 例如: b = ["萝卜& ...
- DNS是如何工作的?
今天很多人都在讲域名系统和互联网作为一个整体是如何工作的,域名系统---也就是大家所熟知的DNS.不幸的是,对于天龙人和普通人来说,他们并不了解DNS到底是什么鬼.今天就来聊聊DNS,和那些想了解DN ...