oracle11g ORA-01078 LRM-00109 ORA-12505 错误

本文记录:Linux平台安装oracle11g数据库名和实例名不是默认的orcl时,遇到的几个错误现象,以备忘之。


1.环境说明:今天在SUSE 11.1 上安装oracle 11.2.0.3 ,安装时全局数据库名称为:sltestdb   实例名为:sltestorcl


2.故障现象:

使用startup启动报错,如下示:

SQL> startup
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/opt/oracle/product/11gR1/db/dbs/initorcl.ora'
SQL>


3.故障原因:

根据LRM-00109错误提示是因为

/opt/oracle/product/11gR1/db/dbs/目录,没有pfile文件 即initorcl.ora。


4.解决办法:

(1)oracle11G  在 $ORACLE_BASE/admin/全局数据库名称/pfile  目录下会有一个类似init.ora.5282013145854的文件;

(2)切换到oracle用户将该文件复制到$ORACLE_BASE/product/11gR1/db/dbs/目录下,并且重命名为:init实例名.ora。

(比如我的实例名是sltestorcl 那么将init.ora.5282013145854 重命名为initsltestorcl.ora 就可以启动数据库实例了)


(3)如果上述操作后还是报错,可以试下带pfile参数启动

SQL> startup pfile =  '/opt/oracle/product/11gR1/db/dbs/initsltestorcl.ora'


############################################################################


5.新问题:

(1)经过上述设置数据库是可以启动了,但是启动后使用PLSQL Developer连接数据库会报错如下:

141158898.jpg

(2)使用 echo $ORACLE_SID 查看启动的sid 不是安装时设置的实例名,而是默认的orcl;


新问题解决方法:

(1)关闭数据库和监听程序,修改oracle用户环境变量: $ORACLE_BASE 目录下 .bash_profile 添加如下内容

export ORACLE_BASE=/opt/oracle/
#设置oracle启动实例名
export ORACLE_SID=sltestorcl
export ORACLE_HOME=$ORACLE_BASE/product/11gR1/db/
export PATH=$PATH:$ORACLE_HOME/bin
#设置语言环境
export NLS_LANG=AMERICAN_AMERICA.UTF8
export LANG=en_US.UTF-8


(2)使环境变量生效:source .bash_profile,也可以退出后重新登陆

(3)重启数据库实例和监听程序



======================2014-5-23======================================= 

今天又遇到:安装数据库时设置数据全局名字和实例名字非orcl时,报错

SQL> startup
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/opt/oracle/product/11gR1/db/dbs/initorcl.ora'
SQL>

经过实验,只需修改oracle用户环境变量: $ORACLE_BASE 目录下 .bash_profile 即可

修改或添加.bash_profile文件内容如下:


export ORACLE_BASE=/opt/oracle/
#设置oracle启动实例名
export ORACLE_SID=sidname
export ORACLE_HOME=$ORACLE_BASE/product/11gR1/db/
export PATH=$PATH:$ORACLE_HOME/bin
#设置语言环境
export NLS_LANG=AMERICAN_AMERICA.UTF8
export LANG=en_US.UTF-8


你可能感兴趣的:(oracle11g,ORA-01078,LRM-00109,ORA-12505错误)