Always use crsctl or srvctl to start/stop cluster resources
Using crsctl : [root@grac41 bin]# crsctl stop resource ora.LISTENER.lsnr -n grac41 [root@grac41 bin]# crsctl start resource ora.LISTENER.lsnr -n grac41 [grid@grac41 ~]$ my_crs_stat | egrep 'LISTENER.ls|STATE_DETAILS|-----' NAME TARGET STATE SERVER STATE_DETAILS ------------------------- ---------- ---------- ------------ ------------------ ora.LISTENER.lsnr ONLINE ONLINE grac41 [root@grac41 bin]# lsnrctl status listener .. Service "grac4" has 1 instance(s). Instance "grac41", status READY, has 1 handler(s) for this service... --> listener is working Using srvctl [grid@grac41 ~]$ srvctl stop listener -n grac41 -l LISTENER [grid@grac41 ~]$ srvctl start listener -n grac41 -l LISTENER [grid@grac41 ~]$ !my my_crs_stat | egrep 'LISTENER.ls|STATE_DETAILS|-----' NAME TARGET STATE SERVER STATE_DETAILS ------------------------- ---------- ---------- ------------ ------------------ ora.LISTENER.lsnr ONLINE ONLINE grac41 Using lnsrctl [grid@grac41 ~]$ srvctl start listener -n grac41 -l LISTENER [root@grac41 bin]# lsnrctl status listener .. Service "grac4" has 1 instance(s). Instance "grac41", status READY, has 1 handler(s) for this service... [root@grac41 bin]# lsnrctl stop LISTENER [grid@grac41 ~]$ my_crs_stat | egrep 'LISTENER.ls|STATE_DETAILS|-----' NAME TARGET STATE SERVER STATE_DETAILS ------------------------- ---------- ---------- ------------ ------------------ ora.LISTENER.lsnr OFFLINE OFFLINE grac41 [root@grac41 bin]# lsnrctl start LISTENER [grid@grac41 ~]$ my_crs_stat | egrep 'LISTENER.ls|STATE_DETAILS|-----' NAME TARGET STATE SERVER STATE_DETAILS ------------------------- ---------- ---------- ------------ ------------------ ora.LISTENER.lsnr OFFLINE OFFLINE grac41 --> Listener remain OFFLINE [root@grac41 bin]# lsnrctl status LISTENER --> No services where registered ! Oracle always recommend the use of the SRVCTL due to the fact that the SRVCTL does more, i.e. SRVCTL will perform a dependency analysis and will inform about cluster related problem if they exist, in a better way than the SQLPLUS which may just say that the instance is not starting. The SRVCTL command will try to start dependent resources (like the vip/ons/listeners) in case they are not running. The SRVCTL utility always do some kind of pre-start of the instances such as updating the OCR information instead of waiting for the check script of the instance resource to detect this instance startup and update the OCR.