oracle_Listener in INTERMEDIATE status with "Not All Endpoints Registered"
2015-08-03 10:25
429 查看
在grid下crsctl stat res -t查询时出现下面状况:
ora.LISTENER.lsnr
ONLINE INTERMEDIATE towg1a Not All Endpoints Registered
ONLINE ONLINE towg1b
查看官方文档如下:
Applies to:
Oracle Server - Enterprise Edition - Version 11.2.0.1 and later
Information in this document applies to any platform.
Symptoms
2 node RAC cluster, trying to add 2nd instance using dbca, get error:
"Connection to the database cannot be established because the listener could be down. Please make sure that the service is registered with a listener and the listener is up."
$crsctl stat res -t shows the listeners are in INTERMEDIATE status on node 2.
ora.LISTENER.lsnr
ONLINE ONLINE racdb1
ONLINE INTERMEDIATE racdb2 Not All Endpoints Registered
ora.LISTENER_SCAN1.lsnr
1 ONLINE INTERMEDIATE racdb2 Not All Endpoints Registered
Cause
The problem is caused by another listener defined statically in listener.ora, using the same port and IP is running from the RDBMS ORACLE_HOME, started manually causing the default listener starting from GRID_HOME can not register its endpoint. Hence the
error reported in dbca.
ps -ef | grep tns:
grid 7222 1 0 Apr26 ? 00:00:13 /u01/app/11.2.0/grid/bin/tnslsnr LISTENER_SCAN1 -inherit
grid 7237 1 0 Apr26 ? 00:00:13 /u01/app/11.2.0/grid/bin/tnslsnr LISTENER -inherit
oracle 7354 1 0 Apr26 ? 00:00:01 /u02/app/oracle/product/11.2.0/db/bin/tnslsnr LISTENER -inherit
Another possible cause is the listener or scan listener being defined manually in listener.ora, for example:
LISTENER_SCAN3 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = racnode1)(PORT = 1523))
)
LISTENER_SCAN1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = racnode1)(PORT = 1521))
Solution
From 11.2 onwards, all listeners should be runing from GRID_HOME, listener and listener_scan entry should be added automatically into listener.ora, no manual editing is required for TCP definition.
1. Stop the listener running from RDBMS ORACLE_HOME
$/bin/lsnrctl stop LISTENER
2. stop the listener from GRID_HOME
$/bin/srvctl stop listener -n
$/bin/srvctl stop scan_listener -i
eg:
$/bin/srvctl stop listener -n racnode1
$/bin/srvctl stop scan_listener -i 1
If above command fails to stop the tnslsnr process, please use "kill -9 " to stop the LISTENER and LISTENER_SCAN1 process.
3. remove any manually added LISTENER definition from listener.ora if it exists
4. restart the LISTENER and LISTENER_SCAN1 from GRID_HOME
$/bin/srvctl start listener -n
$/bin/srvctl start scan_listener -i
5. check crsctl stat res -t output, they both should show ONLINE status now.
这台该死的机器上装着RAC的一个节点,就是出问题的节点;还装着一个单实例数据库。先把单实例的监听停掉,然后按照官方文档步骤2,停掉grid下的监听,然后再启动grid下的监听;再启动单实例的监听。草!
ora.LISTENER.lsnr
ONLINE INTERMEDIATE towg1a Not All Endpoints Registered
ONLINE ONLINE towg1b
查看官方文档如下:
Applies to:
Oracle Server - Enterprise Edition - Version 11.2.0.1 and later
Information in this document applies to any platform.
Symptoms
2 node RAC cluster, trying to add 2nd instance using dbca, get error:
"Connection to the database cannot be established because the listener could be down. Please make sure that the service is registered with a listener and the listener is up."
$crsctl stat res -t shows the listeners are in INTERMEDIATE status on node 2.
ora.LISTENER.lsnr
ONLINE ONLINE racdb1
ONLINE INTERMEDIATE racdb2 Not All Endpoints Registered
ora.LISTENER_SCAN1.lsnr
1 ONLINE INTERMEDIATE racdb2 Not All Endpoints Registered
Cause
The problem is caused by another listener defined statically in listener.ora, using the same port and IP is running from the RDBMS ORACLE_HOME, started manually causing the default listener starting from GRID_HOME can not register its endpoint. Hence the
error reported in dbca.
ps -ef | grep tns:
grid 7222 1 0 Apr26 ? 00:00:13 /u01/app/11.2.0/grid/bin/tnslsnr LISTENER_SCAN1 -inherit
grid 7237 1 0 Apr26 ? 00:00:13 /u01/app/11.2.0/grid/bin/tnslsnr LISTENER -inherit
oracle 7354 1 0 Apr26 ? 00:00:01 /u02/app/oracle/product/11.2.0/db/bin/tnslsnr LISTENER -inherit
Another possible cause is the listener or scan listener being defined manually in listener.ora, for example:
LISTENER_SCAN3 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = racnode1)(PORT = 1523))
)
LISTENER_SCAN1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = racnode1)(PORT = 1521))
Solution
From 11.2 onwards, all listeners should be runing from GRID_HOME, listener and listener_scan entry should be added automatically into listener.ora, no manual editing is required for TCP definition.
1. Stop the listener running from RDBMS ORACLE_HOME
$/bin/lsnrctl stop LISTENER
2. stop the listener from GRID_HOME
$/bin/srvctl stop listener -n
$/bin/srvctl stop scan_listener -i
eg:
$/bin/srvctl stop listener -n racnode1
$/bin/srvctl stop scan_listener -i 1
If above command fails to stop the tnslsnr process, please use "kill -9 " to stop the LISTENER and LISTENER_SCAN1 process.
3. remove any manually added LISTENER definition from listener.ora if it exists
4. restart the LISTENER and LISTENER_SCAN1 from GRID_HOME
$/bin/srvctl start listener -n
$/bin/srvctl start scan_listener -i
5. check crsctl stat res -t output, they both should show ONLINE status now.
这台该死的机器上装着RAC的一个节点,就是出问题的节点;还装着一个单实例数据库。先把单实例的监听停掉,然后按照官方文档步骤2,停掉grid下的监听,然后再启动grid下的监听;再启动单实例的监听。草!
相关文章推荐
- Pull is not possible because you have unmerged ...
- Ubuntu 下修改 Could not reliably determine the serve
- 解决Default storage engine (InnoDB) is not available导致mysql无法启动的修改办法
- MySQL4 File ‘c:\mysql\share\charsets\?.conf’ not found (Errcode: 22)的解决方法
- SQL中IS NOT NULL与!=NULL的区别
- mysql4.1以上版本连接时出现Client does not support authentication protocol问题解决办法
- movie not found的解决办法(iis)
- sql中all,any,some用法
- sql Union和Union All的使用方法
- List all the Databases on a SQL Server
- document.all的一个比较完整的总结及案例
- Python模块学习 re 正则表达式
- 解决bash: mysql: command not found 的方法
- MySQL 启动报错:File ./mysql-bin.index not found (Errcode: 13)
- Windows平台的 PHP 报错 Fatal error: Class COM not found in 的解决方法
- Apache启动错误Permission denied: httpd: could not open error log file解决方法
- sql not in 与not exists使用中的细微差别
- MYSQL出现" Client does not support authentication "的解决方法
- bash scp command not found的解决方法
- preg_match_all使用心得分享