2009-04-17 45 views
7

He intentado que sqlplus se conecte a Oracle desde mi máquina OS X. Hice otra pregunta al respecto here.¿Cómo se usa telnet para verificar una conexión a Oracle?

Una persona sugirió que intente con telnet. Consultando la página, he intentado:

[ [email protected] ~ ]$ 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 

también ...

[ [email protected] ~ ]$ telnet DBHOST 1521 

... con el mismo resultado.

No estoy seguro de cómo interpretar estos resultados. Parece que es lo que esperarías en cualquier caso. No haría esto ...

$ ssh some_mysql_host:3306 

¿Cómo es diferente de telnet a Oracle?

O tal vez no entendí lo que significaban.

Si alguien pudiera ayudarme a entender cómo se usa telnet para probar una conexión con Oracle, le agradecería.

Respuesta

8

Están proponiendo el uso de telnet simplemente porque es uno de los clientes TCP/IP más simples y porque está instalado en casi todas partes. Es solo una manera fácil de verificar desde la línea de comandos si realmente puede hacer una conexión TCP/IP a cualquier servicio en particular.

Además, en muchos de los protocolos de IP basados ​​en ASCII es sencillo interactuar con el servidor para comprobar su funcionamiento escribiendo comandos y mirando las respuestas. Esto mismo lo he hecho varias veces con servidores SMTP.

En su caso, cuando se agota el tiempo de espera, o el host completo está inactivo, o el acceso a ese host o servicio en particular está siendo bloqueado por un firewall. Si puede llegar al servidor con un ping, entonces este último es más probable.

También existe la posibilidad de que la resolución de su nombre lo lleve al host incorrecto, pero debe poder confirmarlo mirando la dirección de IP que telnet dijo que estaba tratando de conectar.

Otra respuesta común es "conexión rechazada". Eso significa que el host está activo, pero que no hay ningún servicio ejecutándose en el puerto especificado.

+2

El problema es que Oracle SQL * Net, utilizado por SQL * Plus y otras herramientas de conexión de red oracle, no es un protocolo ASCII, sino un binario específico de Oracle. –

+1

de hecho sí, aunque intentar la conexión de telnet debería al menos mostrar si el servidor está activo. – Alnitak

3

Su intento de telnet a dbhost 1521 al obtener 'no se puede conectar' con un tiempo de espera sugiere que su resolución de nombre de host para 'dbhost' le está dando una respuesta incorrecta, o que el host está desconectado, inactivo o tiene problemas de red.

Si Oracle funcionaba, obtendría una conexión. Realmente no podría hacer nada con eso, pero confirmaría que el oráculo estaba listo y escuchando.

4

Básicamente, cuando se especifica un número de puerto por ejemplo

Telnet myserver 1521

Se intentará conectarse a la máquina en ese puerto. Si ve algún dato devuelto o incluso una consola en blanco, entonces se ha conectado. Si recibe un mensaje que no puede conectarse, entonces la máquina no está escuchando en ese puerto o un cortafuegos está bloqueando la conexión.

-3

¿Por qué no hacerlo de la manera "correcta"? Telnetting a algún puerto de red arbitrario no le dará la información correcta, si la base de datos y su oyente están funcionando correctamente.

Simplemente instale el software oracle instantclient y use el asistente de configuración.

+1

instantclient no viene con un asistente de configuración. –

+5

Usar la aplicación telnet de esta manera es una técnica de solución de problemas legítima para determinar si hay un problema de nivel de red (como un puerto bloqueado) en oposición a un problema de capa de aplicación (como nombres incorrectamente configurados). Para ciertos protocolos, como HTTP o SMTP, incluso se pueden probar acciones de capa de aplicación con telnet, ya que son protocolos de texto bien definidos. – JasonCG

1

La instancia de Oracle no está conectada desde otros sistemas, mientras está conectada desde localhost, creo que el puerto no está abierto y muestra un problema en el puerto telnet 1521 de otro sistema.

Cuestiones relacionadas