You need to put everything in a single invokation of LSNRCTL. Like this: #!/bin/sh PWD=${2} case "$1" in 'start') su - oracle -c "/oracle_home/bin/lsnrctl start LISTENER_ORCL" 'stop') su - oracle -c "/usr/local/bin/stop_listener $PWD" /usr/local/bin/stop : #!/bin/sh /oracle_home/bin/lsnrctl << EOF set current_listener LISTENER_ORCL set password ${1} stop EOF Alternatively, you could just find the process ID for the listener, and kill it... On 1/2/07, Joe Smith <joe_dba@xxxxxxxxxxx> wrote:
How do I shutdown the LISTENER with a password in a script. I have this default script called "oracle". It starts and stops the databases and listener. When I changed the default listener settings for security reasons starting the listener is easy, it does not require the password. However shutting down down the listener is the problem. PWD=${2} case "$1" in 'start') su - oracle -c "/oracle_home/bin/lsnrctl start LISTENER_ORCL" 'stop') su - oracle -c "/oracle_home/bin/lsnrctl set current_listener LISTENER_ORCL" su - oracle -c "/oracle_home/bin/lsnrctl set password ${2}" su - oracle -c "/oracle_home/bin/lsnrctl stop" this last command fails. It points to the default listener LISTENER. Not the correct listener, i.e. LISTENER_ORCL. How do I shutdown a password protected listener thru a shell script? thanks. _________________________________________________________________ Fixing up the home? Live Search can help http://imagine-windowslive.com/search/kits/default.aspx?kit=improve&locale=en-US&source=hmemailtaglinenov06&FORM=WLMTAG -- //www.freelists.org/webpage/oracle-l
-- Cheers, -- Mark Brinsmead Senior DBA, The Pythian Group http://www.pythian.com/blogs