Oracle Instant Client-SQL * Plus-错误:没有TNS侦听器(MacOSX)

时间:2018-07-08 05:36:45

标签: sql oracle macos oracle11g oracle-sqldeveloper

我正在开发一个Web应用程序,该应用程序必须与ORACLE数据库连接。

目前,我正在使用macOS X,并且已经下载了Oracle Instant Client。 我可以运行sqlplus,但是在登录界面时出现以下错误:

SQL*Plus: Release 12.2.0.1.0 Production on Sun Jul 8 10:55:48 2018

Copyright (c) 1982, 2017, Oracle.  All rights reserved.
Enter user-name: hr
Enter password: 
ERROR:
ORA-12541: TNS:no listener

为供您参考,除Oracle的客户端软件外,我没有下载任何东西,并根据官方安装文档进行了安装。 我真的需要为数据库sqlplus工作。

请帮助。

还可以告诉我如何在我的机器上使用sqlplus吗?

1 个答案:

答案 0 :(得分:1)

Instant客户端没有为您提供要使用的Oracle数据库,它们只是连接到数据库的工具。摘自Instant Client

的文档
  

Oracle Instant Client使应用程序可以连接到本地或本地   用于开发和生产部署的远程Oracle数据库。的   Instant Client库提供必要的网络连接,   以及基本和高端数据功能,以充分利用   Oracle数据库。

因此,在使用即时客户端之前,您需要在某个地方(本地或远程)安装Oracle数据库。如果远程主机上有数据库服务器,则可以使用easy connect语法进行连接。

sqlplus user/pwd@//remote_hostname:1521/remote_dbname

如果您的tnsnames.ora中有一个$TNS_ADMIN文件,已预先配置为包含可用的数据库实例列表,则可以简单地使用此文件进行连接

 sqlplus user/pwd@tns_entry_for_DB

在命令行中输入tns条目也可以。

 sqlplus user/pwd@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(Host=remote_hostname)(Port=1521))(CONNECT_DATA=(SID=remote_dbname)))

此外,Oracle没有为您提供10gr2以后的数据库软件版本,无法在Mac上本地安装

如果要在Mac中安装并连接到本地数据库版本12.2,一种选择是托管用于Linux / Windows的虚拟机或运行docker container。请在此处阅读我的信息以获取详细信息:Oracle SQL for Mac OS X