srv1:oracle$ srvctl status scan_listener
SCAN Listener LISTENER_SCAN1 is enabled
SCAN listener LISTENER_SCAN1 is running on node srv2
SCAN Listener LISTENER_SCAN2 is enabled
SCAN listener LISTENER_SCAN2 is running on node srv1
SCAN Listener LISTENER_SCAN3 is enabled
SCAN listener LISTENER_SCAN3 is running on node srv3
srv1:oracle$ srvctl status listener
Listener LISTENER is enabled
Listener LISTENER is running on node(s): srv1,srv2,srv3
srv1:oracle$ srvctl status scan
SCAN VIP scan1 is enabled
SCAN VIP scan1 is running on node srv2
SCAN VIP scan2 is enabled
SCAN VIP scan2 is running on node srv1
SCAN VIP scan3 is enabled
SCAN VIP scan3 is running on node srv3
mysrv1:PRD:crs:/home/oracle/:>./crsstat.sh | grep -i lsnr
ora.LISTENER.lsnr ONLINE ONLINE on mysrv1
ora.LISTENER_SCAN1.lsnr ONLINE ONLINE on mysrv1
ora.LISTENER_SCAN2.lsnr ONLINE ONLINE on mysrv3
ora.LISTENER_SCAN3.lsnr ONLINE ONLINE on mysrv2
ora.mysrv1.LISTENER_mysrv.lsnr ONLINE ONLINE on mysrv
ora.mysrv2.LISTENER_MYSRV1.lsnr ONLINE ONLINE on mysrv2
ora.mysrv3.LISTENER_MYSRV2.lsnr ONLINE ONLINE on mysrv3
crsstat.sh
#!/usr/bin/ksh
#
# Sample 10g CRS resource status query script
#
# Description:
# - Returns formatted version of crs_stat -t, in tabular
# format, with the complete rsc names and filtering keywords
# - The argument, $RSC_KEY, is optional and if passed to the script, will
# limit the output to HA resources whose names match $RSC_KEY.
# Requirements:
# - $ORA_CRS_HOME should be set in your environment
RSC_KEY=$1
QSTAT=-u
AWK=/usr/bin/awk # if not available use /usr/bin/awk
# Table header:echo ""
$AWK \
'BEGIN {printf "%-45s %-10s %-18s\n", "HA Resource", "Target", "State";
printf "%-45s %-10s %-18s\n", "-----------", "------", "-----";}'
# Table body:
$ORA_CRS_HOME/bin/crs_stat $QSTAT | $AWK \
'BEGIN { FS="="; state = 0; }
$1~/NAME/ && $2~/'$RSC_KEY'/ {appname = $2; state=1};
state == 0 {next;}
$1~/TARGET/ && state == 1 {apptarget = $2; state=2;}
$1~/STATE/ && state == 2 {appstate = $2; state=3;}
state == 3 {printf "%-45s %-10s %-18s\n", appname, apptarget, appstate; state=0;}'
No comments:
Post a Comment