Oracle同一个用户下启动多个数据库实例报错记录

来源:互联网 发布:高中生刷题软件 编辑:程序博客网 时间:2024/06/05 13:13

我在同一个用户下创建了两个数据库实例,然后突然有一天机器down掉了,重启数据库发现另一个实例启动失败,在同事的帮助下才解决了问题~

前奏

先说说前奏吧。

  • 首先查看监听状态:

    lsnrctl stat

  • 查看当前环境的实例ID:

    echo $ORACLE_SID

  • 启动监听:

    lsnrctl start

  • 以SYS用户登录数据库:

    sqlplus / as sysdba

  • 启动数据库

    startup

  • 退出命令

    exit

    OK!第一个数据困实例已经启动成功,在windows下可以使用PL/SQL登录数据库,查看是否可正确使用。
    在启动第二个实例前,需要先操作一步,先更改一下环境变量,即实例ID:

    export ORACLE_SID=secdb

然后再次按照上述步骤启动第二个实例的时候,(startup)就会报错:

> ORA-01078: 处理系统参数失败> LRM-00109: 无法打开参数文件 'C:\ORACLE\ORA92\DATABASE\INITRISESOFT.ORA'

问题原因

在oracle9i和oracle10g中,数据库默认将使用spfile启动数据库,如果spfile不存在,则会报以上错误,也就是说数据库启动时在C:\ORACLE\ORA92\DATABASE\下找不到INITRISESOFT.ORA文件

解决办法

C:\oracle\admin\risesoft\pfile目录下把init.ora.113200823544拷贝到C:\ORACLE\ORA92\DATABASE\下,然后重命名为INITRISESOFT.ORA文件,然后再startup

SQL>startup----------------数据库装载完毕。数据库已经打开。

注意事项

lsnrctl status对非默认数据库实例有1分钟时延

0 0
原创粉丝点击