如何使用PL/SQL Developer连接到远程Oracle数据库?

36

我有一个名为"TEST"的数据库,使用地址123.45.67.89:1521进行连接。

如何在PL/SQL Developer中连接到它呢?


2
你有设置 TNSNAMES.ora 文件吗?http://www.orafaq.com/wiki/Tnsnames.ora - John Paulett
6个回答

47
在登录对话框的“数据库”部分中,输入 //hostname.domain:port/database,在您的情况下为//123.45.67.89:1521/TEST - 这假设您不想出于某种原因设置tnsnames.ora文件/条目。
另外,请确保服务器的防火墙设置没有阻止端口1521

35
我建议创建一个TNSNAMES.ORA文件。从你的Oracle客户端安装目录中,导航到NETWORK\ADMIN。你可能已经有一个名为TNSNAMES.ORA的文件,如果有,请编辑它,否则使用你喜欢的文本编辑器创建它。
接下来,只需添加如下条目即可:
MYDB =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 123.45.67.89)(PORT = 1521))
    (CONNECT_DATA = (SID = TEST)(SERVER = DEDICATED))
  )
你可以将MYDB更改为任何你喜欢的名称,这是应用程序使用TNSNAMES中的信息来查找数据库的标识符。
最后,在PL/SQL Developer中使用MYDB作为你的数据库登录。它应该会自动在TNSNAMES.ORA中找到连接字符串。
如果这样不起作用,点击Help->About,然后在左上角点击带有“i”图标的选项卡。第四个选项卡是“TNS Names”选项卡,请检查它以确认它是否正在加载正确的TNSNAMES.ORA文件。如果不是,则可能在计算机上安装了多个Oracle版本,并且您需要找到正在使用的版本。

4
除了Richard Cresswells和dpbradleys的答案之外: 如果您不想创建TNS名称,也不希望使用“//123.45.67.89:1521/Test”这种格式(某些配置可能不适用),您可以输入以下内容:
(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 123.45.67.89)(PORT = 1521)) (CONNECT_DATA = (SID = TEST)(SERVER = DEDICATED)))

(作为一行)插入到登录对话框的“数据库”部分。


4
问题不在TNS文件上,在PLSQL Developer中,如果您没有安装Oracle,您需要提供OCI.DLL文件的位置。
在PLSQL DEV应用程序中,转到工具-首选项-Oracle/连接-OCI库。
在我的情况下,我放置了下一个地址:C:\Oracle\InstantClient-win32-11.2.0.1.0\oci.dll。
如果安装了Weblogic应用程序,则我没有尝试过,但如果您想尝试,请放置下一个位置:C:\Oracle\Middleware\wlserver_10.3\server\adr。

嗨Ignacio,欢迎加入。我在进行“第一篇帖子”审核时投了你的答案,因为它似乎很到位并且写得很好(作为Java开发人员,我无法确定它是否正确)。您可以通过单击编辑的日期/时间来检查andrewsi所做的更改。感谢您加入我们 :) - Maarten Bodewes

2
我遇到过这个问题很多次,因为我有一个32位的PL/SQL Developer和64位的Oracle数据库或Oracle客户端。
解决方案如下:
  1. 安装32位客户端。
  2. 设置PLSQL DEV-Tools-Preferencies-Oracle Home到新的32位客户端Home
  3. 将PLSQL DEV-Tools-Preferencies-OCI设置为新的32位home / bin / oci.dll。例如:c:\app\admin\product\11.2.0\client_1\BIN\oci.dll
  4. 保存并重新启动PLSQL DEV。
在c:\app\admin\product\11.2.0\client_1\NETWORK\admin文件夹中编辑或创建TNSNAMES.ORA文件,就像上面提到的那样。
尝试在控制台中使用TNSPING,例如

C:>tnsping ORCL

如果仍有问题,请将TNS_ADMIN Enviroment properties值设置为指向TNSNAMES.ORA所在的文件夹,例如:c:\app\admin\product\11.2.0\client_1\network\admin

1
Username : username
Password : password
Database : //123.45.67.89:1521/TEST
Connect as : Normal 

这对我有用,且版本为13.0.6.1911 64位。

1
欢迎来到 Stack Overflow,请确认您的答案是否正确,并提供代码示例以展示如何实现。 - Saeed Zhiany
我被GUI用于测试第一步,如果正确则可以进入下一步。 - kajohnsak.m

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接