web-dev-qa-db-fra.com

ORA-12541: TNS: pas d'auditeur

J'ai travaillé sur ce problème toute la journée, lisant des articles ici et ailleurs. Je ne parviens tout simplement pas à surmonter cette erreur. Je peux très bien me connecter localement sur mon serveur (CentOS), mais continuer à obtenir le TNS: aucune erreur d'écoute lors de la tentative de connexion via mon Mac (OSX Mavericks) qui se trouve sur le même sous-réseau. Voici quelques notes que j'ai capturées en fonction des informations que je vois qui ont été demandées pour ce type de problème:

--------------------------------------------------------------------------------
MISC NETWORK CONFIG:
--------------------------------------------------------------------------------
[root@rubyrailssvr ~]# more /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.1.14   rubyrailssvr.homenet.com
[root@rubyrailssvr ~]#


[root@rubyrailssvr ~]# more /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=rubyrailssvr.homenet.com
[root@rubyrailssvr ~]#
--------------------------------------------------------------------------------


--------------------------------------------------------------------------------
LISTENER.ORA File:
--------------------------------------------------------------------------------
[Oracle@rubyrailssvr ~]$ more /u01/app/Oracle/product/11.2.0/xe/network/admin/listener.ora
# listener.ora Network Configuration File:

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (Oracle_HOME = /u01/app/Oracle/product/11.2.0/xe)
      (PROGRAM = extproc)
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
      (ADDRESS = (PROTOCOL = TCP)(Host = 192.168.1.14)(PORT = 1521))
    )
  )

DEFAULT_SERVICE_LISTENER = (XE)
[Oracle@rubyrailssvr ~]$
--------------------------------------------------------------------------------


--------------------------------------------------------------------------------
TNSNAMES.ORA File:
--------------------------------------------------------------------------------
[Oracle@rubyrailssvr ~]$ more /u01/app/Oracle/product/11.2.0/xe/network/admin/tnsnames.ora
# tnsnames.ora Network Configuration File:

XE =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(Host = 192.168.1.14)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = XE)
    )
  )

EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )

[Oracle@rubyrailssvr ~]$
--------------------------------------------------------------------------------


--------------------------------------------------------------------------------
SQLNET.ORA File:
--------------------------------------------------------------------------------
jfhogarty@rubyrailssvr:/u01/app/Oracle/product/11.2.0/xe/network/admin$ more sqlnet.ora
SQLNET.AUTHENTICATION_SERVICES= (ALL)

NAMES.DIRECTORY_PATH= (TNSNAMES,ONAMES,HOSTNAME)
jfhogarty@rubyrailssvr:/u01/app/Oracle/product/11.2.0/xe/network/admin$
--------------------------------------------------------------------------------


--------------------------------------------------------------------------------
CHECK LISTENERS:
--------------------------------------------------------------------------------
[Oracle@rubyrailssvr ~]$ lsnrctl

LSNRCTL for Linux: Version 11.2.0.2.0 - Production on 13-AUG-2014 17:56:21

Copyright (c) 1991, 2011, Oracle.  All rights reserved.

Welcome to LSNRCTL, type "help" for information.

LSNRCTL> status
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC_FOR_XE)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 11.2.0.2.0 - Production
Start Date                13-AUG-2014 17:46:45
Uptime                    0 days 0 hr. 9 min. 39 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Default Service           XE
Listener Parameter File   /u01/app/Oracle/product/11.2.0/xe/network/admin/listener.ora
Listener Log File         /u01/app/Oracle/diag/tnslsnr/rubyrailssvr/listener/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC_FOR_XE)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(Host=192.168.1.14)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(Host=rubyrailssvr.homenet.com)(PORT=8080))(Presentation=HTTP)(Session=RAW))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
  Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "XE" has 1 instance(s).
  Instance "XE", status READY, has 1 handler(s) for this service...
Service "XEXDB" has 1 instance(s).
  Instance "XE", status READY, has 1 handler(s) for this service...
The command completed successfully
LSNRCTL>
--------------------------------------------------------------------------------


--------------------------------------------------------------------------------
ON THE CLIENT:
--------------------------------------------------------------------------------
➜  ~  more /usr/local/Oracle/admin/network/tnsnames.ora
rubyrailssvr =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(Host = 192.168.1.14)(PORT = 1521))
    (CONNECT_DATA = (SERVICE_NAME = XE))
  )

rubyrailssvr.homenet.com =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(Host = 192.168.1.14)(PORT = 1521))
    (CONNECT_DATA = (SERVICE_NAME = XE))
  )
➜  ~
--------------------------------------------------------------------------------


--------------------------------------------------------------------------------
TRYING TO CONNECT:
--------------------------------------------------------------------------------
➜  ~  sqlplus system@rubyrailssvr

SQL*Plus: Release 11.2.0.4.0 Production on Wed Aug 13 18:21:50 2014

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

Enter password:
ERROR:
ORA-12541: TNS:no listener


Enter user-name: % 
➜  ~



➜  ~  sqlplus [email protected]

SQL*Plus: Release 11.2.0.4.0 Production on Wed Aug 13 18:22:17 2014

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

Enter password:
ERROR:
ORA-12541: TNS:no listener


Enter user-name: 
➜  ~
--------------------------------------------------------------------------------
4
HoGi

Tout d'abord, merci pour la réponse. Je travaille sur un Mac et le client instantané n'inclut pas l'utilitaire tnsping. J'avais essayé de me connecter, à partir de l'ordinateur distant, et c'est là que j'ai obtenu le TNS: aucune erreur d'auditeur. La connexion au serveur est correcte.

J'avais déjà essayé le test telnet, mais comme je n'avais pas installé et exécuté telnet sur le serveur, ce test n'était pas utile. Cependant, j'ai décidé d'installer telnet car il peut être utile pour les tests. Ce faisant, j'ai remarqué qu'une commande que j'avais exécutée sur la ligne de commande pour ouvrir un port à iptables n'était pas là. J'ai donc mis à jour ce fichier et maintenant tout fonctionne.

vim /etc/sysconfig/iptables

[BEFORE:]
# Generated by iptables-save v1.4.7 on Fri Jan 31 09:19:34 2014
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [6630:522769]
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-Host-prohibited
-A FORWARD -j REJECT --reject-with icmp-Host-prohibited
COMMIT
# Completed on Fri Jan 31 09:19:34 2014

[AFTER:]
# Generated by iptables-save v1.4.7 on Fri Jan 31 09:19:34 2014
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [6630:522769]
-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p udp -m state --state NEW --dport 23 -j ACCEPT
-A INPUT -p tcp -m state --state NEW --dport 23 -j ACCEPT
-A INPUT -p tcp --dport 1521 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-Host-prohibited
-A FORWARD -j REJECT --reject-with icmp-Host-prohibited
COMMIT
# Completed on Fri Jan 31 09:19:34 2014

service iptables restart

J'ai tellement chassé ma queue hier que je n'ai jamais pensé à revoir le fichier iptables -/slap head!

Merci,

John ... (HoGi)

3
HoGi

Ma séquence d'étapes de dépannage

  1. L'auditeur est-il résoluble? C:\>tnsping MYDB (Confirme: l'écouteur de base de données s'exécute côté serveur)
  2. Y a-t-il un problème de pare-feu? C:\>telnet hostname 1521
  3. Puis-je me connecter? C:\>sqlplus system/pass@MYDB ou C:\>sqlplus system/pass@hostname:1521/MYDB (Confirme: la base de données est ouverte)
  4. Enfin, les chances d'avoir une connexion réussie avec votre outil de développement préféré ont augmenté de 100%
2
Bjarte Brandt

Dans le fichier listener.ora

définir Host = LOCALHOST

la raison étant que si vous êtes sur un réseau sans fil, vous pouvez obtenir des adresses IP différentes attribuées après chaque redémarrage, ce qui invalide les paramètres de votre écouteur si vous utilisez une adresse IP fixe dans votre fichier listener.ora.

Avec Host = LOCALHOST, vous êtes assuré de la cohérence en ce qui concerne les paramètres d'adresse IP entre les redémarrages du système au moment du démarrage du service d'écoute.

0
user3831069

Il est trop tard, mais je suis également confronté à ce problème actuellement et je l'ai résolu par.

  1. Accédez à Net Manager (Oracle Net Manager) dans votre système installé Oracle.
  2. Développez Local> Listners> LISTNER.
  3. Ajouter un nouveau protocole d'adresse: TCP/IP, hôte: YOURPCNAME.DOMAIN, port: YOUR PORT.
  4. Accédez à Fichier> Enregistrer la configuration réseau.
  5. Système RESTART.

ci-dessous est un instantané pour ajouter une nouvelle adresse enter image description here

0
Umair Anwaar