1:故障现象:ORA-01078: failure in processing system parameters
SVR4 Error: 2: No such file or directory
Additional information: 3
问题是因为密码文件丢失或被破坏等原因造成文件不能访问。
查看命令orapwd语法:
$ orapwd
Usage: orapwd file= password= entries=
where
file - name of password file (mand),
password - password for SYS (mand),
entries - maximum number of distinct DBA and OPERs (opt),
There are no spaces around the equal-to (=) character.
查看密码文件所在位置:
$ pwd
/oracle/app/product/920/dbs
在指定位置重建密码文件:
$ orapwd file=/oracle/app/product/920/dbs/orapw password=sys123 entries=10
使用sqlplus重新启动oracle数据库:
$ sqlplus /nolog
sql>conn / as sysdba
sql>startup
Oracle 数据库密码文件的使用和维护
3:ORA-01102: cannot mount database in EXCLUSIVE mode
今天在自己虚拟机上玩DG,在主节点启动的时候报错ORA-01102: cannot mount database in EXCLUSIVE mode可能是上次虚拟机未正常关闭引起的,在网上查了一下相关资料,总结一下该类问题的排查过程,首先看一下数据库启动时报错信息
第二点,因为上次我虚拟机是直接断电关闭的,我们可以排除第二种可能的1、2点。接下来考虑第3点。
root 2310 2358 0 16:00 pts/0 00:00:00 su - oracle
oracle 2311 2310 0 16:00 pts/0 00:00:00 -bash
root 2427 2403 0 10:47 pts/1 00:00:00 su - oracle
……
1.如果是HA系统,检查其他节点是否已经启动实例;
2.检查Oracle进程是否存在,如果存在则杀掉进程;3.检查信号量是否存在,如果存在,则清除信号量;
4.检查共享内存段是否存在,如果存在,则清除共享内存段;
5.检查锁内存文件lk和sgadef.dbf是否存在,如果存在,则删除。
4:ORA-01507: database not mounted
今天启动数据库时报错了!
SQL> startup mount
ORACLE instance started.
Total System Global Area 608174080 bytes
Fixed Size 1220844 bytes
Variable Size 176164628 bytes
Database Buffers 427819008 bytes
Redo Buffers 2969600 bytes
ORA-01102: cannot mount database in EXCLUSIVE mode
Google了一下发现一个写的非常好的帖子,详细内如如下(被我修改过了!)
分析原因:
一、在HA系统中,已经有其他节点启动了实例,将双机共享的资源(如磁盘阵列上的裸设备)占用了;
二、说明Oracle被异常关闭时,有资源没有被释放,一般有以下几种可能,
1、 Oracle的共享内存段或信号量没有被释放;
2、 Oracle的后台进程(如SMON、PMON、DBWn等)没有被关闭;
3、 用于锁内存的文件lk<sid>和sgadef<sid>.dbf文件没有被删除。
解决思路:
当发生1102错误时,可以按照以下流程检查、排错:
如果是HA系统,检查其他节点是否已经启动实例检查Oracle进程是否存在,如果存在则杀掉进程检查信号量是否存在,如果存在,则清除信号量检查共享内存段是否存在,如果存在,则清除共享内存段检查锁内存文件lk<sid>和sgadef<sid>.dbf是否存在,如果存在,则删除。
具体做法:
首先,虽然我们的系统是HA系统,但是备节点的实例始终处在关闭状态,这点通过在备节点上查数据库状态可以证实。
其次、是因系统掉电引起数据库宕机的,系统在接电后被重启,因此我们排除了第二种可能种的1、2点。最可疑的就是第3点了。
查$ORACLE_HOME/dbs目录:
$ cd $ORACLE_HOME/dbs
$ ls sgadef*
sgadef* not found
$ ls lk*
/opt/oracle/product/ 10.2.0/db_1/dbs/lkSIMPLY
lkSIMPLY
果然,lk<sid>文件没有被删除。将它删除掉
$ rm lk*
再次启动时又遇到下面的错误,不过别担心,继续后面的操作就搞定
SQL> startup mount
ORACLE instance started.
Total System Global Area 608174080 bytes
Fixed Size 1220844 bytes
Variable Size 176164628 bytes
Database Buffers 427819008 bytes
Redo Buffers 2969600 bytes
ORA-00205: error in identifying control file, check alert log for more info : (
查看共享内存段
[root@simply bdump]# ipcs -map
------ Shared Memory Creator/Last-op --------
shmid owner cpid lpid
786444 root 6490 6438
819213 root 6549 6438
1409040 oracle 31502 16728
根据ID号清楚共享内存段
ipcrm –m 1409040
我这里操作是没有成功的,不过执行了下面的操作就ok了!
查看信号量
[root@simply bdump]# ipcs -s
key semid owner perms nsems
0x17ff6454 360448 oracle 640 154
清除oracle的信号量
[root@simply bdump]# ipcrm -s 360448
再次查询确认
[root@simply bdump]# ipcs -s
------ Semaphore Arrays --------
key semid owner perms nsems
再查询共享内存段也ok了!
[root@simply bdump]# ipcs -m
如果是Oracle进程没有关闭,
$kill -9 <PID>
ORA-00205: error in identifying control file, check alert log for more info : (
查看共享内存段
[root@simply bdump]# ipcs -map
------ Shared Memory Creator/Last-op --------
shmid owner cpid lpid
786444 root 6490 6438
819213 root 6549 6438
1409040 oracle 31502 16728
根据ID号清楚共享内存段
ipcrm –m 1409040
我这里操作是没有成功的,不过执行了下面的操作就ok了!
查看信号量
[root@simply bdump]# ipcs -s
key semid owner perms nsems
0x17ff6454 360448 oracle 640 154
清除oracle的信号量
[root@simply bdump]# ipcrm -s 360448
再次查询确认
[root@simply bdump]# ipcs -s
------ Semaphore Arrays --------
key semid owner perms nsems
再查询共享内存段也ok了!
[root@simply bdump]# ipcs -m
如果是Oracle进程没有关闭,
$kill -9 <PID>
ORA-01102: cannot mount database in EXCLUSIVE mode
Connected to an idle instance.
SQL> startup
ORACLE instance started.
Fixed Size 778736 bytes
Variable Size 137371152 bytes
Database Buffers 138412032 bytes
Redo Buffers 262144 bytes
ORA-01102: cannot mount database in EXCLUSIVE mode
ORA-01507: database not mounted
ORACLE instance shut down.
lkNDMSQA: 6666(oracle) 6668(oracle) 6670(oracle) 6672(oracle) 6674(oracle) 6676(oracle) 6678(oracle) 6680(oracle) 6690(oracle) 6692(oracle) 6694(oracle) 6696(oracle) 6737(oracle) 6830(oracle)
lkNDMSQA: 6666 6668 6670 6672 6674 6676 6678 6680 6690 6692 6694 6696 6737 6830
[root@qa-oracle dbs]# fuser -u lkNDMSQA
ORACLE instance started.
Fixed Size 778736 bytes
Variable Size 137371152 bytes
Database Buffers 138412032 bytes
Redo Buffers 262144 bytes
Database mounted.
Database opened.
SQL>
$ ls sgadef*
sgadef* not found
$ ls lk*
lkORA92
再启动数据库,成功。
三.有可能还会出现以下错误
ORA-00205: error in identifying control file, check alert log for more info
报此错误有一种情况是在环境变量里面没添加NLS_LANG,必须加上这一句。
export NLS_LANG=AMERICAN_CHINA.ZHS16GBK
|
相关推荐
2. **安装与配置**:指导如何在操作系统上安装Oracle9i,包括硬件和软件需求,以及数据库实例的创建和启动。 3. **数据存储结构**:讲解表空间、段、区和块等Oracle中的数据存储组件,以及如何管理磁盘空间。 4. *...
通过阅读“Oracle9i数据库管理员指南”、“Oracle9i数据库管理实务讲座”以及“Oracle培训教材”,学习者可以系统地掌握Oracle 9i数据库的各个方面,为成为合格的数据库管理员打下坚实的基础。这些资料不仅涵盖理论...
Oracle 9i Real Application Clusters (RAC) 是Oracle数据库的一种高可用性和可扩展性解决方案,它允许多台服务器共享同一个数据库实例,从而提供故障切换和负载均衡的能力。本安装手册将详细介绍在安装和配置Oracle...
在这个详尽的教程中,我们将深入探讨Oracle9i企业管理器的各项特性,帮助你掌握这个强大工具的使用。 一、Oracle9i企业管理器概述 Oracle9i企业管理器,简称OEM,是Oracle9i版本中的一个关键组件,用于简化数据库的...
1. 错误日志分析:Oracle的alert.log和trace文件会记录启动过程中的错误信息,通过分析这些日志,可以找出问题所在。 2. 使用`sqlplus /nolog`连接:在命令行中尝试以非登录模式启动sqlplus,然后执行`startup ...
下面我们将详细探讨Linux下Oracle 9i安装过程中涉及的知识点。 1. **系统需求**:首先,你需要一个兼容的Linux发行版,例如Red Hat Enterprise Linux或SUSE Linux。Oracle 9i对硬件和操作系统版本有一定的要求,...
7. **数据库实例和后台进程**:实例启动或停止过程中的问题,如"ORA-00600"或"ORA-00312",可能涉及内部错误或配置不当。 每个错误代码都提供了相应的解决方案,可能包括修改SQL语句、调整数据库参数、修复数据文件...
1. 安装过程:Oracle 9i的安装通常包括先安装服务器组件,然后是客户端工具。在安装过程中,你需要选择适当的安装类型,如企业版或标准版,并设置数据库的全局数据库名和系统识别符(SID)。 2. 配置网络服务:通过...
本安装手册将详尽地指导用户在Linux环境下安装和配置Oracle 9i的过程,确保数据库系统的稳定运行。以下是对该安装过程中的关键知识点的详细解释: 1. **系统需求**:在开始安装之前,必须确保你的Linux系统满足...
3. 配置环境:在安装过程中,你可能需要配置JDK的路径,确保系统已经安装了与Oracle 9i JDeveloper兼容的Java Development Kit。此外,还要设定工作目录和安装位置。 4. 完成安装:安装过程结束后,通常会有一个...
- **配置**:在Oracle 9i的安装过程中,用户需要输入全局数据库名称和SID。这两个值在安装完成后不能轻易更改,因此在配置时需要仔细考虑。 #### 三、Oracle 9i安装配置 在安装Oracle 9i的过程中,全局数据库名和...
总而言之,《Oracle9i DBA参考手册》是DBA进行日常维护和问题解决的必备参考资料,其内容覆盖了从基础操作到高级特性的方方面面,无论你是初学者还是经验丰富的专家,都能从中获得宝贵的指导和帮助。通过深入理解和...
用户可以通过双击这个文件来启动安装过程,按照向导提示完成Oracle 9i客户端的安装。 在实际应用中,Oracle 9i客户端通常用于开发人员的开发环境、DBA的管理工具以及远程系统对Oracle数据库的访问。其稳定性、兼容...
《Windows + Oracle 9i 数据库安装配置指南》是一份详尽的教程,旨在帮助用户在Windows操作系统上成功安装和配置Oracle 9i数据库。Oracle 9i是Oracle公司的一个重要版本,它提供了许多增强的功能和性能优化,适用于...
在这个过程中,我们不仅需要了解Linux操作系统的基本操作,还需要对Oracle数据库的架构和安装流程有深入理解。下面将详细阐述Linux下Oracle 9i的安装步骤及相关知识点。 1. **系统需求**: 在安装Oracle 9i之前,...
### 卸载Oracle 9i 的详细步骤...以上步骤能够帮助您在Windows 2000环境中彻底卸载Oracle 9i,确保后续安装或升级过程顺利进行。对于不同版本的Windows操作系统,虽然大体流程相似,但在具体操作细节上可能会有所差异。
在本文中,我们将深入探讨Oracle 9i的安装过程、系统需求、主要特性和一些常见问题。 首先,Oracle 9i的安装需要满足一定的硬件和软件条件。在操作系统层面,它支持多种平台,包括Windows、Linux、Solaris、Unix等...
根据提供的信息,本文档将详细介绍如何在虚拟机中安装Windows Server 2003并在此基础上安装Oracle 9i数据库服务器端和客户端,包括配置步骤及常见问题解决方案。 ##### **1. 安装虚拟机** - 使用`VMware ...
在 Oracle 9i 中,启动 OEM 或 OMS 是一个常见的问题,以下是解决这些问题的常见方法。 问题一:Oracle 系统服务是否开启 Oracle 的系统服务共有 11 项,分别是: 1. Oracle OLAP 9.0.1.0 2. Oracle OLAP Agent 3...