环境:Linux 5.4 Oracle 11.2.0.3

在Linux上连接Oracle时遇到报错:

SQL> show parameter sga
ORA-01034: ORACLE not available
Process ID: 0
Session ID: 0 Serial number: 0

SQL> startup
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/u01/app/oracle/product/11.2.0/db_1/dbs/initorcal.ora'

上面的'../initorcal.ora'报错说明当前Oracle数据库识别的数据库实例名(即SID)为:orcal;
可能是安装Oracle时的SID的设置和环境变量里设置的SID不一致造成的。

解决方法:

1.查询当前的数据实例名(SID)
[oracle@oradb ~]$ echo $ORACLE_SID
orcal

2.查看环境变量的SID配置
[oracle@oradb ~]$ cat .bash_profile
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

export PATH
export ORACLE_SID=orcl

发现系统识别的实例名orcal和环境变量设置的为orcl不一致,这时我们需要修改实例名SID

3.修改oracle用户的ORACLE_SID环境变量,如将orcal修改为orcl
[oracle@oradb ~]$ vi /home/oracle/.bash_profile
export ORACLE_SID=orcl

4.修改/etc/oratab文件,将sid名由orcal修改为orcl
[oracle@oradb ~]$ vi /etc/oratab
orcl:/u01/app/oracle/product/11.2.0/db_1:N

5、进入到$ORACLE_HOME/dbs目录,如我的 /u01/app/oracle/product/11.2.0/db_1/dbs
将所有文件名中包含原来的sid的修改为对应的新sid的
[oracle@oradb ~]$ cd /u01/app/oracle/product/11.2.0/db_1/dbs
[oracle@oradb dbs]$ ls
hc_orcal.dat  init.ora  lkORCAL  orapworcal  spfileorcal.ora

[oracle@oradb dbs]$ mv hc_orcal.dat hc_orcl.dat
[oracle@oradb dbs]$ mv lkORCAL lkORCL
[oracle@oradb dbs]$ mv orapworcal orapworcl
[oracle@oradb dbs]$ mv spfileorcal.ora spfileorcl.ora

6.启动数据库
[oracle@oradb dbs]$ sqlplus / as sysdba

SQL> startup
ORACLE instance started.

数据库成功启动!!

【参考】 http://www.linuxidc.com/Linux/2015-02/114255.htm

ORA-01034: 、ORA-01078: 和 LRM-00109: 的解决方法的更多相关文章

  1. oracle错误(ORA:12154 ORA:01034 和 ORA:27101 ORA-18008 ORA-01081)

    按照正常操作流程,启动项目,发现项目报错,原因是连接不上oracle数据库, PLSQL连接时报错,错误码  ORA:12154 无法解析指定的连接标识符 第一次,遇到这个错误,在网上找了资料都是需要 ...

  2. listener.ora/sqlnet.ora/tnsnames.ora配置文件详解

    oracle网络配置 三个配置文件 listener.ora.sqlnet.ora.tnsnames.ora ,都是放在$ORACLE_HOME/network/admin目录下. 英文说明: The ...

  3. oracle的listener.ora sqlnet.ora tnsnames.ora三个文件的关联性

    学习:http://www.cnblogs.com/william-lee/archive/2010/10/20/1856261.html 之前因为安装的是windows server 2008 r2 ...

  4. ORACLE RAC 下非缺省端口监听配置(listener.ora tnsnames.ora)

    不论是单实例还是RAC,对于非缺省端口下(1521)的监听器,pmon进程不会将service/instance注册到监听器,即不会实现动态注册.与单实例相同,RAC非缺省端口的监听器也是通过设置参数 ...

  5. oracle的sqlnet.ora,tnsnames.ora,listener.ora三个配置文件

    总结: 1 .三个配置文件都是放在$ORACLE_HOME\network\admin目录下. 2 .sqlnet.ora确定解析方式 3 .listener.ora上设SID_NAME,通常用于JD ...

  6. oracle的sqlnet.ora , tnsnames.ora , Listener.ora 文件的作用(转)

    oracle网络配置三个配置文件 listener.ora.sqlnet.ora.tnsnames.ora ,都是放在$ORACLE_HOME/network/admin目录下.1. sqlnet.o ...

  7. oracle安装完成后目录中不论有没有tnsnames.ora和listener.ora文件 PLSQL都能连上的问题解决方法

    今天遇到这个问题了,发现listener.ora文件和tnsnames.ora文件在Net Work文件夹下没有,正常情况下安装完oracle或者是oracle Client是会有的,但是在Net M ...

  8. 【ORA】ORA-01078和LRM-00109 解决方法

    今天切换到asm实例的时候,发现是一个空实例,尝试启动实例,结果报错ORA-01078和LRM-00109 SQL> startupORA-01078: failure in processin ...

  9. ORACLE RAC 监听配置 (listener.ora tnsnames.ora)

    Oracle RAC 监听器的配置与单实例稍有不同,但原理和实现方法基本上是相同的.在Oracle中 tns进程用于为指定网络地址上的一个或多个Oracle 实例提供服务注册,并响应来自客户端对该服务 ...

  10. Oracle的tnsnames.ora配置(PLSQL Developer)

    首先打开tnsnames.ora的存放目录,一般为D:\app\Administrator\product\11.2.0\client_1\network\admin,就看安装具体位置了. 步骤阅读 ...

随机推荐

  1. C#调用C++编写的dll库

    我用vs2008建的C++ dll类库,名字test_interopVC,和C#的CeshiVC项目 一:C++项目dll类库: 1.test_interopVC.h,主要简单的测试,所以就在一个类里 ...

  2. MVC 小常识

    什么是MVC (模型 视图 控制器)? MVC是一个架构模式,它分离了表现与交互.它被分为三个核心部件:模型.视图.控制器.下面是每一个部件的分工: 视图是用户看到并与之交互的界面. 模型表示业务数据 ...

  3. myeclipse 8.6安装freemarker插件

    1. 打开http://sourceforge.net/projects/freemarker-ide/files/ 下载插件.2. 将其解压,将hudson.freemarker_ide_0.9.1 ...

  4. web.xml配置详解之listener与context-param

    1. 启动一个WEB项目的时候,容器(如:Tomcat)会去读它的配置文件web.xml.读两个节点: <listener></listener> 和 <context- ...

  5. linxu php连接sqlserver

    今天linux的yum也不能用,用的是第三方的yum源,yum安装好后更新header又花了很长时间. 记得安装指定安装目录要用 --with-php-config=PATH命令. CentOS 6安 ...

  6. MyEclipse 编写 ExtJS 卡死问题解决方法

    MyEclipse 8.6  在 jsp 中编写 ExtJS时,会出现卡死现象,让人甚是头疼.网上找了很多方法,折腾半天,还是不管用. 什么MyEclipse 优化,Validation 取消,MyE ...

  7. thinkphp 模板显示display和assign的用法

    this->assign('name',$value); //在 Action 类里面使用 assign 方法对模板变量赋值,无论何种变量类型都统一使用 assign 赋值 $this-> ...

  8. Windows转到linux中,文件乱码,文件编码转换

    最近,学习又重新开始Linux学习,所以一直在Centos中,昨天一朋友把他在Windows下写的C程序发给我,我欣然答应,本以为很快就能在我的Linux系统中运行起来.没想到出现了乱码,结果想把这个 ...

  9. jQuery 效果 - animate() 方法

    http://www.w3school.com.cn/jquery/effect_animate.asp 实例 改变 "div" 元素的高度: $(".btn1" ...

  10. Fork/Join框架之双端队列

    简介 ForkJoinPool管理着ForkJoinWorkerThread线程,ForkJoinWorkerThread线程内部有一个双端队列,这个双端队列主要由一个数组queue.数组下标queu ...