我有一个虚拟机,最新版本的Oracle SQL Developer(包含JDK 8的套件 - 虽然我还是单独安装了它),还有一个11G的Oracle数据库。
我机器上的我的TNS文件没有所有数据库的列表,而是它如下所示(有多个数据库):
> CONN_DATA = (DESCRIPTION =
> (ADDRESS_LIST =
> (ADDRESS = (PROTOCOL = TCP)(HOST = HOSTNAME)(PORT = XXXX))
> )
> (CONNECT_DATA =
> (SERVICE_NAME = Bob)
> ) )
我尝试使用多种方法连接到其中一个数据库。
我不知道该怎么做,类似的问题似乎在我的机器上的环境变量问题上解决,但我不确定如何确认。
答案 0 :(得分:4)
即使这个问题相当陈旧,我也有同样的问题。
原因完全不同。
我没有正确设置网络别名。
转到首选项 - 数据库 - 高级并设置TNSNames目录的路径。
答案 1 :(得分:1)
我通过使用与Gunnar Bernstein相同的路径解决了这个问题。
在SQL Developer“Outils>Préférence>Avancé>Répertoirensnames”(是的,我是法国人。那是'a;)为法国DBA的)
我的旧tnsnames path
是"C:\oracle"
我将其更新到正确的路径"c:\oracle\product\10.2.0\db_1\NETWORK\ADMIN"
。并且,taaataaammmm "Status : success"
。
答案 2 :(得分:0)
解决方案是仅设置正确的oracle客户端和tns名称目录
仅发布此答案以帮助他人-相同的目录结构可能不同
go to tools --> preference -->database --> advanced
在下部
选中->使用oracle客户端
的框然后单击->配置
如果您的oracle客户端已经正确安装
您将看到客户端类型-> oracle_home 如果您不->选择即时客户端
大多数客户端安装目录为
for oracle 11g
C:\Apps\oracle\Clients\112_64
和
for oracle 12c
C:\Apps\oracle\Clients\12102_64
_64代表64位客户端。如果您的客户端是32位->选择_32文件夹
然后在tns名称目录中-放入
C:\Apps\oracle\network\admin
如果这不是您的tnsnames目录->尝试查找
find this filename on your computer --> tnsnames.ora
答案 3 :(得分:0)
我还发现,如果您使用的是组驱动器上的tnsnames.ora文件-如果Windows“认为”您未连接到驱动器,那么您也会收到此错误。
只需打开Windows资源管理器并“重新连接”到组驱动器,即可解决此问题。
答案 4 :(得分:0)
已解决: SQL Developer正在(c:\ users <用户名>)位置中查找TNS名称文件。我将文件放在该位置,然后重新启动SQL Developer,它开始工作。