我一直在努力让sqlplus从我的OS X机器连接到Oracle。我问了另一个关于它的问题here。
有人建议我试试telnet。咨询了手册页,我试过了:
[ ethan@gir ~ ]$ telnet DBHOST:1521
Trying xxx.xxx.xxx.xxx...
telnet: connect to address xxx.xxx.xxx.xxx: Operation timed out
telnet: Unable to connect to remote host
也...
[ ethan@gir ~ ]$ telnet DBHOST 1521
......结果相同。
我不确定如何解释这些结果。看起来像你在任何情况下所期望的那样。你不会这样做......
$ ssh some_mysql_host:3306
telnet到Oracle有何不同?
或许我不明白他们的意思。
如果有人能帮我理解如何使用telnet测试与Oracle的连接,我将不胜感激。
答案 0 :(得分:10)
他们建议使用telnet
只是因为它是最简单的TCP / IP客户端之一,因为它几乎安装在任何地方。这只是一种从命令行检查您是否真的可以与任何特定服务建立TCP / IP连接的简单方法。
此外,在许多基于ASCII的IP协议上,它可以直接与服务器进行交互,通过输入命令和查看响应来检查其工作情况 - 我自己用SMTP服务器做了很多次。
在您的情况下,当您收到超时时,整个主机都会关闭,或者防火墙会阻止对该特定主机或服务的访问。如果您可以使用ping
访问服务器,那么后者更有可能。
您的名称解析实际上也会将您带到错误的主机,但您应该能够通过查看telnet
所说的尝试连接的IP地址来确认。< / p>
另一个常见的回应是“拒绝连接”。这意味着主机已启动,但指定端口上没有运行任何服务。
答案 1 :(得分:7)
基本上指定端口号时,例如
Telnet myserver 1521
它将尝试连接到该端口上的计算机。如果您看到任何返回的数据,甚至是空白控制台,那么它已连接。如果收到无法连接的消息,则表明计算机未在该端口上侦听,或者防火墙阻止了该连接。
答案 2 :(得分:3)
您尝试telnet到dbhost 1521的“无法连接”超时表示“dbhost”的主机名解析错误答案,或者主机处于脱机状态,关闭或存在网络问题。< / p>
如果oracle正在运行,你就会得到一个连接。你真的不能做任何事情,但它会确认oracle已经启动并正在倾听。
答案 3 :(得分:1)
Oracle实例未与其他系统连接,而它是从localhost
连接的,我认为端口未打开,并且它向其他系统的telnet 1521
端口显示问题。
答案 4 :(得分:-4)
为什么不采用“正确”的方式呢?如果数据库及其监听器工作正常,则Telnet到某个任意网络端口将无法提供正确的信息。
只需安装oracle instantclient软件并使用配置向导。