启动Oracle常见疑难问题分析
文章作者 100test 发表时间 2007:03:14 13:57:52
来源 100Test.Com百考试题网
实例和数据库的启动与关闭是DBA的重要职责之一。只有打开数据库,其他用户才能对数据库中的数据进行操作。一旦数据库关闭,便不能对其操作。对于DBA们来说,关闭和重新启动数据库以便优化、调整应用程序的运行是经常碰到的事情。如果用户已经进入了数据库,使用SHUTDOWN IMMEDIATE 或SHUTDOWN ABORT命令来执行关闭数据库,则用户将失去连接,直到数据库重新启动。经常关闭和启动会对数据库性能造成一定的影响,当然也会影响到用户对数据库的使用。本文从管理数据库的角度来分析在Oracle启动和关闭时经常遇到的问题,并总结了在启动和关闭Oracle数据库中应该注意的问题和事项。
启动常见问题
(一)在一个控制文件被损坏情况下,如何正常启动?
系统环境
操作系统:Windows 2000 Advanced Server
数据库: Oracle 8i R2 (8.1.6) for NT 企业版
安装路径:C:\ORACLE
错误现象
因硬盘有坏道,一个控制文件损坏了,或人工误删一个控制文件,控制面板的Oracle相关服务可以启动成功,但用SQL*Plus无法连接。错误提示为“ORA-01034: ORACLE not available”。
解决方法
(1)在开始菜单中直接运行命令,进入“svrmgrl>”提示符模式。
(2)在“svrmgrl>”提示符下键入“connect internal”命令。
(3)在“svrmgrl>”提示符下键入“shutdown abort”命令关闭数据库。
(4)找到init.ora文件,它一般位于“C:\Oracle\admin\oradb\pfile”目录下,然后修改init.ora文件,使无法使用的控制文件不在control_files参数中定义。如“C:\Oracle\oradata\oradb\control03.ctl”,可在init.ora中将其删除掉,或者更换成其它可启动的控制文件。
修改前:
control_files=(“C:\Oracle\oradata\oradb\control01.ctl”.C:\Oracle\oradata\oradb\control02.ctl“,”“C:\Oracle\oradata\oradb\control03.ctl”)
修改后:
control_files=(“C:\Oracle\oradata\oradb\
control01.ctl”,“C:\Oracle\oradata\oradb\control02.ctl”)
(5)重新启动数据库实例,即可解决问题。
注意:在控制文件中最少要有两个控制文件。