Home >Database >Mysql Tutorial >非法关机 Oracle startup报错解决办法

非法关机 Oracle startup报错解决办法

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-06-07 17:15:081225browse

今天Oracle开发服务器突然连接不上,sqlplus /nolog、conn /as sysdba、startup命令后显示,SQLgt; startup ORA-01078: failure

今天Oracle开发服务器突然连接不上,,sqlplus /nolog、conn /as sysdba、startup命令后显示

SQL> startup
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/opt/oracle10g/product/10.2/db_1/dbs/initORA10G.ora'

查找文件,果然不存在。估计是非法关机造成的。

这是因为在oracle9i和oracle10g中,oracle默认将使用spfile启动数据库,如果spfile不存在,则就会出现上述错误。

解决方法1(已经验证):
将$ORACLE_BASE/admin /数据库名称/pfile目录下的init.ora.012009233838形式的文件copy到$ORACLE_HOME/dbs目录下 initoracle.ora即可。(注:initoracle.ora中的oracle为你的实例名 ORACLE_SID)


解决方法2:

用oraenv命令来改变当前环境的SID,然后用pfile重新产生spfile,就可以启动数据库了.
改变SID:
[oracle@ root]$ source oraenv
ORACLE_SID = [oracle] ? test1
bash: /root/.bashrc: Permission denied
重新产生spfile:
SQL> create spfile from pfile;
File created.

SQL> startup
ORACLE instance started.

附:Linux下oracle操作命令

重启oracle

lsnrctl stop
sqlplus /nolog
conn /as sysdba
shutdown (startup)
exit
lsnrctl start

启动oracle
sqlplus /nolog
conn /as sysdba
startup
exit

lsnrctl start


关闭oracle
lsnrctl stop
sqlplus /nolog
conn /as sysdba
shutdown
exit

查看Oracle是否启动

linux

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn