
ORA-12541 « TNS:no listener » signifie que votre client a bien trouvé l’adresse de la base (hôte + port), a tenté de s’y connecter… mais que personne n’écoute sur ce port. Contrairement à ORA-12154 (résolution de l’alias), ici le problème est côté serveur ou réseau. Voici comment le régler.
Le message
ORA-12541: TNS:no listener
ORA-12541: TNS : pas de listenerTraduction : « j’ai contacté hôte:port, mais aucun listener Oracle ne répond là ». Trois pistes : le listener est arrêté, le port/hôte est faux, ou un pare-feu bloque.
Étape 1 — Le listener tourne-t-il ?
Sur le serveur Oracle :
lsnrctl status
-- si arrêté :
lsnrctl startlsnrctl status liste aussi les services enregistrés et le port réellement écouté — notez-les, ils doivent correspondre à votre connexion.
Étape 2 — Le bon hôte et le bon port ?
Vérifiez que votre connexion vise exactement l’hôte/port du listener :
-- test direct, sans tnsnames.ora
sqlplus user@"srv-oracle01:1521/orclpdb1"Le port Oracle par défaut est 1521 mais il est souvent personnalisé. Une faute de port = ORA-12541 garanti.
Étape 3 — Tester la connectivité réseau
# le port est-il joignable depuis le client ?
telnet srv-oracle01 1521
# ou
nc -zv srv-oracle01 1521- ✅ Connexion ouverte mais ORA-12541 → listener arrêté ou mauvais service.
- ❌ Connexion refusée/timeout → pare-feu, mauvaise IP, ou serveur éteint.
Causes fréquentes selon le contexte
- Serveur/VM redémarré : le listener n’est pas configuré pour démarrer automatiquement →
lsnrctl start+ activer le service au boot. - Pare-feu (Windows Defender, iptables, security group cloud) qui bloque le port 1521 → ouvrir le port.
- Mauvais HOST dans tnsnames.ora : l’alias se résout (pas d’ORA-12154) mais pointe vers une IP/nom erroné.
- Listener sur une autre adresse : il écoute sur
localhostuniquement alors que vous venez du réseau → reconfigurerlistener.orasur la bonne interface. - Base locale arrêtée (poste de dev) : démarrer la base et le listener.
Vérifier/redémarrer côté serveur (récapitulatif)
lsnrctl status # état + services + port
lsnrctl stop
lsnrctl start
lsnrctl services # services dynamiquement enregistrésSi la base est démarrée mais non enregistrée auprès du listener, forcez l’enregistrement : ALTER SYSTEM REGISTER;
FAQ
Quelle différence entre ORA-12541 et ORA-12154 ?
ORA-12154 : l’alias ne se résout pas (problème client/config). ORA-12541 : l’alias se résout mais aucun listener ne répond (problème serveur/réseau).
Et ORA-12514 ?
ORA-12514 = le listener répond mais ne connaît pas le service demandé. Le listener tourne donc ; corrigez le SERVICE_NAME ou attendez l’enregistrement de l’instance.
Comment savoir sur quel port écoute Oracle ?
lsnrctl status sur le serveur affiche les endpoints (HOST/PORT) écoutés.
