Navicat连接Oracle的一些问题

megadron 2011-06-21 06:53:08
环境:Windows 7 + Oracle 11g r2 + Navicat premium 9.15
Oracle基本是默认安装,安装过程没出现过任何异常
Oracle开启了两个服务:OracleServiceORCL和OracleOraDb11g_home1TNSListener
Navicat一直都连接不上本地的Oracle
网上搜了一大堆资料,大都是改那3个配置文件的
最终还是没能解决这个问题
最终的问题是:
Navicat主机那里如果填本机IP地址(192.168.18.8),错误代码是:ORA-12541:TNS:no listener
如果填localhost,错误代码是:ORA-28547:connection to server failed,probable Oracle Net admin error
tnsping localhost 是通的,tnsping 192.168.18.8 则出错 TNS-12541: TNS: 无监听程序

以下是listener.ora文件:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = C:\Oracle\product\11.2.0\dbhome_1)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:C:\Oracle\product\11.2.0\dbhome_1\bin\oraclr11.dll")
)
)

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
)

ADR_BASE_LISTENER = C:\Oracle

请高人指点一二
...全文
9455 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
zz_shi 2012-08-18
  • 打赏
  • 举报
回复
谢谢!正在尝试中~~~~,希望有效果!
kecoyo 2012-04-06
  • 打赏
  • 举报
回复
把Oracle安装目录下oci.dll,替换掉Navicat目录下的oci.dll文件,就解决了。
JavaAlpha 2012-03-08
  • 打赏
  • 举报
回复
我也遇到这样的问题了,纠结中……
lvlyfengyue 2011-11-29
  • 打赏
  • 举报
回复
纠结了一晚上了,终于解决了,真是太感谢了,恩人呐。
hyj_cndn 2011-11-03
  • 打赏
  • 举报
回复
遇到,解决,好贴!赞!
C维 2011-08-05
  • 打赏
  • 举报
回复
刚接触Oracle,遇到同样的问题 呵 看到这文章解决了 感谢!
megadron 2011-06-22
  • 打赏
  • 举报
回复
果然是oci.dll的问题,谢了。你是我的恩人。
灵雨飘零 2011-06-22
  • 打赏
  • 举报
回复
oci.dll的版本不对
从 http://www.oracle.com/technology/software/tech/oci/instantclient/index.html 下载client
里面很多,根据你的版本来下,我下载的是instantclient_11_1。
在navicat的 工具-选项-其他-OCI ,选择刚下的client中的 oci.dll
设置环境变量:
1)在环境变量PATH中开头增加C:\Instantclient10_2;
2)增加用户环境变量SQLPATH,值为C:\Instantclient10_2
3)增加用户环境变量NLS_LANG,值为AMERICAN_AMERICA.UTF8
选择 Basic 连接,就大概能连接上了
megadron 2011-06-22
  • 打赏
  • 举报
回复
高手快快出现,找了很多资料都没解决,只能指望在这里解决了。
megadron 2011-06-21
  • 打赏
  • 举报
回复
sqlplus是可以登录的。所以我想多半是listener.ora的问题
还有,我非常确定数据库服务和侦听都启动了
kerisyml 2011-06-21
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 tangren 的回复:]
未使用过navicat,建议使用pl/sql developer,或者toad
[/Quote]


进行查找:
1、首先确认你的数据库已经启动了,可以用net start OracleServiceORCL
2、其次确认你的侦听启动了否,用lsnrctl status查看,如果没有启动,用lsnrctl start启动。
3、以上启动后,直接打开sqlplus,输入用户名密码,无需输入服务名,直接登录即可。
tangren 2011-06-21
  • 打赏
  • 举报
回复
sqlplus能登录吗?不能登录,贴出错误信息
megadron 2011-06-21
  • 打赏
  • 举报
回复
问题是用Oracle自带的客户端也登录不了。
tangren 2011-06-21
  • 打赏
  • 举报
回复
未使用过navicat,建议使用pl/sql developer,或者toad

17,377

社区成员

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

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