Oracle RAC 在grid下找不到listener

在oracle rac 创建数据库的时候可能会遇到下面的报错:

Oracle RAC 在grid下找不到listener

如上图,错误描述十分清楚,找不到listener需要在grid用户下创建一个。
+ASM1:/home/[email protected]>crs_stat -t -v
Name           Type           R/RA   F/FT   Target    State     Host       
----------------------------------------------------------------------
ora.ARCH.dg    ora....up.type 0/5    0/     ONLINE    ONLINE    rac1       
ora.DATA.dg    ora....up.type 0/5    0/     ONLINE    ONLINE    rac1       
ora....N1.lsnr ora....er.type 0/5    0/0    ONLINE    ONLINE    rac2       
ora....TING.dg ora....up.type 0/5    0/     ONLINE    ONLINE    rac1       
ora.asm        ora.asm.type   0/5    0/     ONLINE    ONLINE    rac1       
ora.cvu        ora.cvu.type   0/5    0/0    ONLINE    ONLINE    rac1       
ora.gsd        ora.gsd.type   0/5    0/     OFFLINE   OFFLINE         
这里的服务显然没有listener
到这里我可能已经找到问题的所在了,虽然我手工的启动了listener,但是crs服务中没有注册到listener的服务,需要手工的添加一下
+ASM1:/home/[email protected]>srvctl status listener
PRCN-2044 : 不存在监听程序
+ASM1:/home/[email protected]>srvctl add listener
+ASM1:/home/[email protected]>srvctl status listener
监听程序 LISTENER 已启用
监听程序 LISTENER 未运行
+ASM1:/home/[email protected]>srvctl start listener
+ASM1:/home/[email protected]>srvctl status listener
监听程序 LISTENER 已启用
监听程序 LISTENER 正在节点上运行: rac2,rac1
+ASM1:/home/[email protected]>

同理节点二上如果也缺少,执行上面同样的操作