1. #!/bin/bash 
  2. sql=`ps -ef | grep ora_ | awk 'NR==1{print $3}'
  3. if [ $sql -eq 1 ];then 
  4. echo "oracle is already running"  
  5. else  
  6. sqlplus -S sys/123  as sysdba <<EOF 
  7. startup 
  8. exit 
  9. EOF 
  10. fi 
  11. lis=`lsnrctl status | sed -n '$p' | awk '{print $4}'
  12.  
  13. if [[ "$lis" = successfully ]];then 
  14. echo "LISTENER is already start!!!" 
  15. else 
  16. lsnrctl start &>/dev/null 
  17. echo "LISTENER is start ok" 
  18. fi 

 测试oracle和监听有没有打开,没打开才进行开启的动作

 

 
  
  1. #!/bin/bash 
  2. sql=`ps -ef | grep ora_ | awk 'NR==1{print $3}'
  3. if [ $sql -eq 1 ];then 
  4. sqlplus -S sys/123  as sysdba <<EOF 
  5. shutdown immediate 
  6. exit 
  7. EOF 
  8. echo "stop oracle ok" 
  9. else 
  10. echo "oracle is already stoping" 
  11. fi 
  12.  
  13. lis=`lsnrctl status | sed -n '$p' | awk '{print $4}'
  14. if [[ "$lis" = successfully ]];then 
  15. lsnrctl stop &>/dev/null 
  16. echo "stop listener ok!" 
  17. else 
  18. echo "LISTENER is already stop!!!" 
  19. fi 

关闭的脚本