数据库连接问题 oracle10g

zhangbat 2006-02-15 06:02:09
鼓捣了一天也没搞定。

今天在我的linux上装了oracle10g
装完后在本机用sqlplus连接没有什么问题

但是用另外一台windows机器(也装了10g)的客户端连就连不上,
报的错是 ora-12560:tns 协议适配器错误

目标很明显了吧,可是我调了好长事件也没法搞定。请各位帮忙
-------------附1:linux 上的listener.ora 文件内容--------------
LISTENER =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.4.111)(PORT = 1521))
)

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = orcl)
(ORACLE_HOME = /home/oracle)
(SID_NAME = ORCL)
)
)
-----------------------附2:win 客户端上的本地服务设置----------
linux10G =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.4.111)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)
...全文
263 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
PbDotNet 2006-02-17
  • 打赏
  • 举报
回复
推测:
远程连接不上,很可能是linux防火墙打开了的原因
关掉试试

不加服务名能连加了就不能连
这个貌似是你装了多次oracle ,这次安装之前没有彻底清理以前的安装,
并且你两次安装使用的sid一样。
建议彻底清除之后重装,或者删除这个实例重新建一个新实例
zhangbat 2006-02-16
  • 打赏
  • 举报
回复
谢谢楼上两位回复……

然则难到真是我描述的不清楚?我再重新描述一遍,期待高手高手高高手指点迷津

首先是我在我的linx机和windows机都装了oracle 10g

windows的机器上的oracle工作正常,问题出在linux上的那个oracle上

先说一下各种配置:
linux机的IP地址:192.168.4.111
win 机的IP地址:192.168.4.119
它们互相可以ping通

linux机上的系统是 红帽 shell是 bash

----------环境变量的设置------------
ORACLE_BASE=/home/oracle
ORACLE_HOME=/home/oracle (我的Oracle就是装在这个位置-_-)
ORACLE_SID=orcl
LD_LIBRARY_PATH=/home/oracle/lib

------------linux机器上的listener.ora文件-------------
LISTENER =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.4.111)(PORT = 1521))
)

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = orcl)
(ORACLE_HOME = /home/oracle)
(SID_NAME = ORCL)
)
)
----------linux机器上的tnsnames.ora文件(win下的和这个也一样)--------
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.4.111)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)

ydyxdata =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.5.204)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ydyxdata)
)
)

-----------linux sqlnet.ora文件-----------------
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)

#后面两句是新加上去的
SQLNET.SUTHENTICATION_SERVICES=(BEQ,NONE)
AUTOMATIC_IPC=OFF
----------------------------------
安装过程是成功的,

安装结束后,我在linux机器上连接远程oracle(win)数据库都成功了
tnsping orcl (本机)
tnsping ydyxdata(远程oracle8i数据库)
都成功通过

我使用 'sqlplus / as sysdba'登录,新建了dba用户'zzz'
然后使用 'sqlplus zzz/zzz' 登录,可以成功登录,并且查看系统视图
select value from v$parameter t where t.name like '%name'
结果为:
VALUE
----------------------------
orcl
orcl
orcl

---------这说明我登录的这个数据库的实例确实是 orcl

但是当我又使用'sqlplus zzz/zzz@ORCL' 的方法登录的时候就出错,报错内容是:
--------------------------
$ sqlplus zzz/zzz@orcl

SQL*Plus: Release 10.2.0.1.0 - Production on Thu Feb 16 11:39:44 2006

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

ERROR:
ORA-01034: ORACLE not available
ORA-27101: shared memory realm does not exist
Linux Error: 2: No such file or directory
---------------------------
$#$#@%@^!#$!^#$

然后在win下连这个linux下的数据库的时候,
tnsping orcl 无法ping 通
然后用连接向导在测试的时候会报错说:
ora-12560:tns 协议适配器错误


------------------------------------
好了,问题描述到这里了.
昨天我把这个文体发上来,看来是我说的不够清楚,现在我把能想到的都说了,请高手一定要帮忙啊,不然那个linux下的oracle就白装了,很多测试都没法进行

另外,拜托各位大侠在回答问题的时候不要靠猜的好么?
我把相关的文件都列在上面了,就麻烦大家告诉我哪里设置的不对,或者还应该怎么做,好么?如果还需要什么数据,我会立刻补充上来。

也可以加我qq指教:1042284

再次谢谢你了
zhangbat 2006-02-16
  • 打赏
  • 举报
回复
在线等,在线顶_
zhangbat 2006-02-16
  • 打赏
  • 举报
回复
顶一下

郁闷,从2002年入csdn开始,提出的问题居然没有一个能在这里得到完美解决的…… -_-'
rouqu 2006-02-15
  • 打赏
  • 举报
回复
Common ora-12560 Troubleshooting Steps:

1.监听服务没有起起来,启动oraclehome92TNSlistener服务
2.database instance没有起起来,启动oracleserviceXXXX,XXXX就是你的database SID.
3.注册表问题,进入HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0将该环境变量ORACLE_SID设置为XXXX,XXXX就是你的database SID.或者我的电脑--属性--高级--环境变量---系统变量--新建
,变量名=oracle_sid,变量值=XXXX,XXXX就是你的database SID.或者进入sqlplus前,在command line下输set oracle_sid=XXXX,XXXX就是你的database SID.
chliang315 2006-02-15
  • 打赏
  • 举报
回复
检查网络服务名(net service name(数据库别名),服务名(service name)是不是都正确

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧