問題: 用户反映系統早上不能登入使用
處理:
1.檢查資料庫服務已shutdown, 執行重啟亦不成功。
2.檢查alert_pye.log, 發現有錯誤信息:ORA-1507 signalled during: ALTER DATABASE OPEN...
3.通過硬體管理人員了解,昨天晚上主機有異常重啟(原因為磁碟陣列故障),说明Oracle被异常关闭时,有资源没有被释放:
<1>.Oracle的共享内存段或信号量没有被释放;
<2>.Oracle的后台进程(如SMON、PMON、DBWn等)没有被关闭;
4.檢查共享内存段,清除oracle的信号量,关闭没有完全关闭的Oracle进程。
<1>.查看共享内存段
$ ipcs -map
------ Shared Memory Creator/Last-op --------
shmid owner cpid lpid
2260993 root 4025 4036
2293762 root 4025 4036
2326531 root 4025 4036
2359300 oracle 6184 13886
------ Message Queues PIDs --------
msqid owner lspid lrpid
<2>.根据ID号清楚共享内存段
$ ipcrm -m 2359300
<3>.查看信号量
$ ipcs -s
------ Semaphore Arrays --------
key semid owner perms nsems
0x95ecf048 131073 oracle 660 187
0x95ecf049 163842 oracle 660 187
0x95ecf04a 196611 oracle 660 187
0x95ecf04b 229380 oracle 660 187
0x95ecf04c 262149 oracle 660 187
0x95ecf04d 294918 oracle 660 187
0x95ecf04e 327687 oracle 660 187
0x95ecf04f 360456 oracle 660 187
0x95ecf050 393225 oracle 660 187
0x95ecf051 425994 oracle 660 187
0x95ecf052 458763 oracle 660 187
0x95ecf053 491532 oracle 660 187
0x95ecf054 524301 oracle 660 187
0x95ecf055 557070 oracle 660 187
0x95ecf056 589839 oracle 660 187
0x95ecf057 622608 oracle 660 187
0x95ecf058 655377 oracle 660 187
<4>.清除oracle的信号量
$ ipcrm -s 131073
$ ipcrm -s 163842
$ ipcrm -s 196611
$ ipcrm -s 229380
$ ipcrm -s 262149
$ ipcrm -s 294918
$ ipcrm -s 327687
$ ipcrm -s 360456
$ ipcrm -s 393225
$ ipcrm -s 425994
$ ipcrm -s 458763
$ ipcrm -s 491532
$ ipcrm -s 524301
$ ipcrm -s 557070
$ ipcrm -s 589839
$ ipcrm -s 622608
$ ipcrm -s 655377
<5>.再次查询确认
$ ipcs -s
<6>.再查询共享内存段
$ ipcs -m
<7>.关闭没有完全关闭的Oracle进程
$ kill -9 <PID>
5.重啟資料庫成功。
6.延伸其他:
資料庫有設置隨主機重啟而自動啟動,但是由於主機重啟並沒有掛接全部磁碟分區,部分磁碟分區需手動掛接,導致資料庫啟動時無法讀取datafile而導致失敗。
為避免後續發生類似情形,需取消設置資料庫隨主機重啟而自動啟動,改為手動執行啟動資料庫服務。
相关推荐
以"ORA-01422"为例,这个错误通常发生在使用SELECT INTO语句时,如果查询返回多于一行的数据,就会触发这个错误。处理方法可能包括修改查询以确保只返回一行数据,或者使用BULK COLLECT INTO与FORALL语句进行批量...
首先,了解"ORA-12737"错误:这是一个与字符集相关的错误,意味着客户端的环境不支持与数据库服务器通信时所需的字符集。在Oracle数据库系统中,字符集用于存储和显示文本数据,不同的字符集能够处理不同的语言和...
ORA-03113是一个常见的Oracle错误代码,通常出现在尝试通过网络连接到数据库服务器时出现通信问题。这个错误可能是由于网络配置不正确、网络故障或数据库服务未启动等原因导致的。 **2. 解决ORA-03113错误的方法** ...
而ORA-2063错误则表示“远程数据库操作失败”,它可能出现在分布式事务处理过程中,当从一个数据库到另一个数据库的数据传输遇到问题时。 在本例中,问题出现在两个不同版本的Oracle数据库(12.1.2.0和11.2.0.4)...
在处理Oracle实例启动时的`ORA-32004`错误时,关键是理解错误信息并定位问题所在。这通常涉及到检查和更新参数文件,尤其是那些可能过时或废弃的参数。在本例中,通过切换到pfile启动数据库,然后更新并重建spfile,...
5. **依赖性处理**:对于复杂的数据库环境,需要特别注意处理依赖关系,比如存储过程、触发器等。 #### 总结 通过以上步骤,我们可以成功地将Oracle 11G的数据迁移到10G数据库中。在实际操作过程中还需要根据具体...
- 修改 pfile 后,数据库成功启动,但不久后再次宕机,出现 ora-00600 和 ora-00474 错误,这表明实例恢复过程中的数据一致性问题。 4. **解决方案探索**: - 尝试解决 ora-00600 和 ora-00474 错误未果,决定...
- **ORA-16032**:这个错误通常是由于归档日志目的地设置的路径存在问题,比如路径格式不正确或者目标位置不可达。例如,在尝试将`log_archive_dest`设置为`'u01/app/oracle/archivelog1'`时,路径中的某些部分可能...
在Linux环境中,对磁盘进行扩容时可能会遇到各种问题,其中一种常见的错误是"Bad magic number in super-block while trying to open"。这个错误通常发生在尝试使用`resize2fs`命令扩展文件系统时,表明系统无法识别...
### Oracle账户锁定问题详解与解决方法 在Oracle数据库管理中,遇到账户被锁定的问题是非常常见的。...需要注意的是,在处理此类问题时,应保持足够的耐心,并仔细检查每一个步骤,避免因操作不当导致问题复杂化。
Oracle GoldenGate 是一款高效的数据复制和实时数据集成工具,它允许在不同的数据库系统之间进行实时数据同步。在本文中,我们将探讨如何配置OGG 11g进行同构(Oracle-Oracle)和异构(Oracle-MySQL)的数据同步,...
总的来说,理解并正确处理ORA-02292错误是数据库管理的关键技能之一。通过理解数据库的约束结构,我们可以更有效地解决这类问题,同时确保数据的完整性和一致性。对于初学者或开发者来说,学习和掌握这些技巧对于...
在本例中,UGA分配了约2G,按每一个用户分配50M内存计算,连接数达到15个时,总分配内存已达到2G,将不能再增加新的连接。 因此,解决TNS-12500错误的方法是,增加系统的物理内存,调整内存分配参数,优化系统配置...
本文将详细介绍ORA8服务端的安装过程,通过一步步的指导,帮助读者顺利完成数据库服务器的部署。 #### 安装前准备 在开始安装ORA8服务端之前,确保您的系统满足以下条件: - 操作系统:Windows NT/2000/XP(或更高...
总的来说,Oracle Instant Client提供了一种方便的方法来处理Oracle连接问题,而oci.dll的更新是解决特定错误如"ORA-28547"的关键步骤。通过理解这个过程,IT专业人士可以更有效地排查和修复Oracle数据库连接问题。
一个表可以有一个或多个列组成的复合主键,但一个表只有一个主键约束。主键自动创建唯一索引,确保其值的唯一性,且通常不允许为空。答案是AC。 4. 修改表名的命令是RENAME,选项B正确。ALTER TABLE通常用于修改表...
这个文件是Oracle数据库实例的初始化参数文件,通常命名为`initSID.ora`,其中`SID`代表服务标识符,即数据库实例的名字,在本例中是`ORCL`。这个文件包含了数据库启动时所需的配置参数,如内存结构大小、日志切换...
模型检查是一种自动化的验证技术,它源于20世纪80年代初,由Clarke和Emerson等人提出。这种技术主要用于检查有限状态系统是否满足特定的逻辑性质,即判断系统的行为是否符合预先设定的规范。模型检查的核心在于将...
"利用ORA文件恢复数据库"涉及的关键知识点主要包括Oracle数据库的备份与恢复策略、ORA文件的作用、数据库的启动与关闭模式以及如何处理损坏的数据文件。以下将详细介绍这些内容。 首先,ORA文件通常指的是Oracle的...