Pessoal,

segue abaixo a descrição de um problema que tivemos ontem, um simples reinicio de serviço do listener e a solução, acaba que estava ‘na cara’.

Análise:
Como estava o status do listner ao iniciar a analise:
[oracle@TESTE01 bin]$ ./crs_stat ora.teste02.LISTENER_TESTE02.lsnr
NAME=ora.teste02.LISTENER_TESTE02.lsnr
TYPE=application
TARGET=ONLINE
STATE=OFFLINE

Parar (crs_stop) o serviço para ficar todo OFFLINE:
[oracle@TESTE01 bin]$ ./crs_stop ora.teste02.LISTENER_TESTE02.lsnr
[oracle@TESTE01 bin]$ ./crs_stat ora.teste02.LISTENER_TESTE02.lsnr
NAME=ora.teste02.LISTENER_TESTE02.lsnr
TYPE=application
TARGET=OFFLINE
STATE=OFFLINE

Problema:
Tentar iniciar (crs_start) o serviço parado, aconteceu os erros abaixo:
[oracle@TESTE01 bin]$ ./crs_start ora.teste02.LISTENER_TESTE02.lsnr
teste01 : CRS-1019: Resource ora.teste02.LISTENER_TESTE02.lsnr (application) cannot run on teste01
teste02 : CRS-1018: Resource ora.teste02.vip (application) is already running on teste01

Como o crs_stop funcionou, achei que funcionaria o crs_start também, mas não.
Depois de procurar um tempo no google e achei soluções do tipo: Parar TODOS os serviços (crs_stop -all) e iniciar tudo (crs_start -all). Não né? Indisponibilidade totalmente desnecessária!
Em um fórum vi alguém dando exemplo de inicializar com o srvctl e lembrei de utiliza-lo, esse utilitário é da administração do Cluster, com ele solucionei o problema.

Solução:
[oracle@TESTE01 bin]$ su
[oracle@TESTE01 bin]$
[root@TESTE01 ~]# srvctl
Usage: srvctl []
command: enable|disable|start|stop|relocate|status|add|remove|modify|getenv|setenv|unsetenv|config
objects: database|instance|service|nodeapps|asm|listener
For detailed help on each command and object and its options use:
srvctl -h
[root@TESTE01 ~]# srvctl start listener -h
Usage: srvctl start listener -n [-l ]
-n Node name
-l “” Comma separated listener names
-h Print usage

[root@TESTE01 ~]# srvctl start listener -n teste02
[root@TESTE01 ~]# exit
[oracle@TESTE01 bin]$ ./crs_stat ora.teste02.LISTENER_TESTE02.lsnr
NAME=ora.teste02.LISTENER_TESTE02.lsnr
TYPE=application
TARGET=ONLINE
STATE=ONLINE on teste02

Após isso testei a conexão dos clients para ambos os listeners, ok, tudo funcionando.

Dica:
Mais informação do comando SRVCTL:

Um pouco mais sobre a família CRS:
Obs.: Lembrando que está em para ser removido em próximas versões.

Espero ter ajudado.

att,
capin