免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 21240 | 回复: 7
打印 上一主题 下一主题

连不上oracle服务器,报错ORA-01034: ORA-27101 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-04-02 10:35 |只看该作者 |倒序浏览
10可用积分
在Fedora9 上装了oracle client,用sqlplus连接另一台windows上的oracle服务器,输完用户名密码后,报错
ERROR:
ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux Error: 2: No such file or directory

我把配好的tnsnames.ora拷到$ORACLE_HOME/network/admin,amdin目录下是这样的:
[root@Test1 admin]# ls
samples  shrept.lst  tnsnames.ora

请问是什么原因,该怎么样解决?非常感谢!!

最佳答案

查看完整内容

不是,你把$ORACLE_SID改回去,然后看看tnsnames.ora里是不是有加gateway的信息,应该不是这些环境变量的问题,
happia2009 该用户已被删除
2 [报告]
发表于 2009-04-02 10:35 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
3 [报告]
发表于 2009-04-02 11:00 |只看该作者
看看windows上的oracle启动了没有

把sqlplus的登录写法贴出来

论坛徽章:
0
4 [报告]
发表于 2009-04-02 11:05 |只看该作者
原帖由 秋风No.1 于 2009-4-2 11:00 发表
看看windows上的oracle启动了没有

把sqlplus的登录写法贴出来



windows上的oracle服务器启动了,sqlplus登录的情况如下:
[root@Test1 10g]# sqlplus test/test2009@gateway

SQL*Plus: Release 10.1.0.3.0 - Production on Thu Apr 2 11:00:19 2009

Copyright (c) 1982, 2004, Oracle.  All rights reserved.

ERROR:
ORA-12541: TNS:no listener


Enter user-name: test
Enter password:
ERROR:
ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux Error: 2: No such file or directory

论坛徽章:
0
5 [报告]
发表于 2009-04-02 12:43 |只看该作者
ORA-01034错误的解决办法

--Oracle常见错误之一

事先说明,Oracle高手是不需要看本文的。

这是个Oracle数据库服务器比较常见的错误。有经验的用户几乎马上就能解决这个错误,再不济也能马上到Metalink(http://metalink.oracle.com)去搜索一下。

不幸的是,大多的时候,都是初级用户遇到的这样的问题(对他们提Metalink也起不到什么作用--一般都没有上面的帐号)。所以,这个小帖子可能还有一定的作用。


问题描述
=======

在试图启动数据库的时候,Oracle报告下列错误:
ERROR:
ORA-27101 Shared memory realm does not exist
ORA-01034 ORACLE not available

基本解释
=======
Error: ORA-27101
Text: shared memory realm does not exist
-------------------------------------------
Cause: Unable to locate shared memory realm
Action: Verify that the realm is accessible


如何解决
=======

这个问题其实用一句话就可以说清楚:

ORACLE_HOME或者ORACLE_SID设置不正确。

在以前的版本中,如果ORACLE_SID不正确,一般都只提示ORA-01034。Oracle 8.1.7 给出一个额外的信息:ORA-27101。

->如果是Unix,在Shell里把ORACLE_SID设置正确即可(注意大小写敏感的问题)。
 此外,检查ORACLE_HOME环境变量。如何检查参考如下的命令:

  % echo $ORACLE_SID        
  % ps -ef |grep smon

->如果是Windows,一般都是因为系统中有多个实例造成的。

 可以在命令行下 C:\>set ORACLE_SID=DEMO

 把这里的DEMO换为你相应的实例名。

 如果还不行的话,检查注册表中的ORACLE_HOME。


 此外,在Windows环境下有的时候连接不上远程的数据库,会报告如此的错误。

 解决办法是把sqlnet.ora文件中的
 SQLNET.AUTHENTICATION_SERVICES = (NTS) NTS换为NONE.


 现在应该没甚么问题了。什么?还不行?那么建议你Google
  (http://www.google.com )一下
  或者到一些技术论坛(比如说ITPub或者CNOUG去看看)。祝你好运!

http://dev.csdn.net/article/20/20163.shtm

论坛徽章:
1
CU十二周年纪念徽章
日期:2013-10-24 15:41:34
6 [报告]
发表于 2009-04-02 13:18 |只看该作者
1,确定远程数据库打开了,检查ORACLE和LISTENER。

2,换个SQLPLUS方式:

   sqlplus /nolog

    SQL>connect test/test2009@gateway

论坛徽章:
0
7 [报告]
发表于 2009-04-02 15:27 |只看该作者
远程数据库是打开的,我用另一台机器的sqlplus可以连接上。
我的listener.ora是这样的,我原来设置的$ORACLE_SID是oradb,根据listener.ora改成了PLSExtProc,可还是连不上,
#cat listener.ora
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = /opt/oracle/product/10g)
      (PROGRAM = extproc)
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
      )
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = TCP)(HOST = Test1)(PORT = 1521))
      )
    )
  )
tnsnames.ora是这样的,
#cat tnsnames.ora
# tnsnames.ora Network Configuration File: /opt/oracle/product/10g/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.

GATEWAY =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.65)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = gateway)
    )
  )

EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )

用sqlplus /nolog
SQL> connect test/test2009@gateway
ERROR:
ORA-12541: TNS:no listener


SQL>
SQL>
SQL> connect test/test2009@gateway
ERROR:
ORA-12170: TNS:Connect timeout occurred

论坛徽章:
0
8 [报告]
发表于 2009-04-02 16:37 |只看该作者
原帖由 happia2009 于 2009-4-2 16:07 发表
不是,你把$ORACLE_SID改回去,然后看看tnsnames.ora里是不是有加gateway的信息,应该不是这些环境变量的问题,



搞定了,还是tnsnames.ora的问题.
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP