« 手工添加Oracle RAC监听 »
Oracle » http://www.anysql.net/oracle/add_oracle_rac_listener.html 2008-01-01在Oracle 10g CRS中没有直接添加Listener的命令, 但可以创建一些配置文件, 然后注册这些文件来向CRS中添加临听器. 首先在每台机器中配置临听器, 手工创建listener.ora文件, 包括所有节点的监听器, 这里面的node名称用大写.
SID_LIST_LISTENER_<node>=
LISTENER_<node>=
接下来要创建配置文件, 有几个节点就要创建几个文件, 第一个node用小写的, 后面的用大写.
${ORA_CRS_HOME}/crs/public/ora.<node>.LISTENER_<node>.lsnr.cap
每个文件中包写入如下几行, 假设节点的名字是db03.
NAME=ora.db03.LISTENER_DB03.lsnr
TYPE=application
ACTION_SCRIPT=${ORACLE_HOME}/bin/racgwrap
CHECK_INTERVAL=600
ACTIVE_PLACEMENT=1
DESCRIPTION=CRS application for listener on node
HOSTING_MEMBERS=db03
PLACEMENT=favored
REQUIRED_RESOURCES=ora.db03.vip
然后用如下命令来注册这些监听器.
crs_register ora.<node>.LISTENER_<node>.lsnr.cap
按照这种方法搞进去的Listener, 在VIP被接管后, 会在另一个节点自动启动, 这正是我想要的模式.


按照这个方法,所有的CRS 的resource都可以手动添加的
包括nodeapps,listener, asm等
手工加Listener是因为它不能用srvctl来加, 听说11g的就可以用srvctl加了.
恩,srvctl以后是个重要的接口,其他的接口可能都整合到一起,比如onsctl, gsdctl, crs_start等等
crs_start不会取消, 因为srvctl主要是用来管db有关的, crs_start是更底层的接口.
也可以直接用crs_profile -create listener这样创建配置文件,然后用crs_register listener去注册的咧
crs_profile这个我一直没有学会怎么用,现在好象懂了,谢谢Alan啊.