首页 > Web开发 > 详细

liunx weblogic服务启停脚本

时间:2018-06-23 18:45:23      阅读:249      评论:0      收藏:0      [点我收藏+]
  1 #!/bin/bash
  2 #sh xx.sh start xx项目  例如:sh autoWeblogic.sh start bius
  3 #经测试发现weblogic 启动大概需要完全启动成功35秒左右 停止大概需要1~7秒
  4 #如果多个项目可以把DOMAIN_NAME换成动态的参数进行传递
  5 ### BEGIN WLS Configration
  6 DOMAIN_NAME=appadmin
  7 SERVER_NAME=$2
  8 #得到服务器的ip
  9 IP=`ifconfig | grep "inet addr" | grep -v 127.0.0.1 | awk {print $2} | awk -F: {print $2}`
 10 ADMIN_URL="t3://ip:8001"
 11 DOMAIN_PATH=/Oracle/Middleware/user_projects/domains/${DOMAIN_NAME}
 12 #使用这个命令得到weblogic对应服务进程的进程号 (grep -w ${SERVER_NAME}) 可以精确匹配 
 13 #WLS_PID=`ps -ef|grep java|grep =${SERVER_NAME}|awk {print $2}`
 14 WLS_PID=`ps -ef|grep java|grep -w ${SERVER_NAME}|awk {print $2}`
 15 #USER_NAME=`logname`
 16 USER_NAME=`whoami`
 17 ## WLS_MEMORY
 18 USER_MEM_ARGS="-Xms2048m -Xmx3096m -XX:PermSize=256m -XX:MaxPermSize=512m"
 19 export USER_MEM_ARGS
 20 ### END WLS Configration
 21  
 22 ######### Weblogic server start|stop|restart|status
 23 #用于等待进程启停
 24 wait_for_pid ()
 25 {
 26   try=0
 27     case "$1" in
 28       created)
 29         while test $try -lt 35 ; do
 30         printf .
 31         try=`expr $try + 1`
 32         sleep 1
 33         done           
 34         WLS_PID=`ps -ef|grep java|grep -w ${SERVER_NAME}|awk {print $2}`           
 35         if [ "$WLS_PID" != "" ] ; then
 36           try=‘‘                        
 37         fi
 38       ;;
 39       removed)
 40         while test $try -lt 7 ; do 
 41         WLS_PID=`ps -ef|grep java|grep -w ${SERVER_NAME}|awk {print $2}`
 42         if [ "${WLS_PID}" = "" ] ; then
 43           try=‘‘
 44         break
 45         fi
 46         printf .
 47         try=`expr $try + 1`
 48         sleep 1
 49         done
 50       ;;
 51     esac
 52 }
 53 #判断操作用户名,不能是root需要使用weblogic用户
 54 if [ "$USER_NAME" = "root" ] ; then
 55   echo "USER_NAME is $USER_NAME! Plz use weblogic!"
 56   exit 1
 57 fi
 58 #domain不能为空
 59 if [ "$DOMAIN_NAME" = "" ] ; then
 60   echo "DOMAIN_NAME is not set! Plz set DOMAIN_NAME!"
 61   exit 1
 62 fi
 63 #service不能为空
 64 if [ "$SERVER_NAME" = "" ] ; then
 65   echo "SERVER_NAME is not set! Plz set SERVER_NAME!"
 66   exit 1
 67 fi
 68 #url不能为空
 69 if [ "$ADMIN_URL" = "" ] ; then
 70   echo "ADMIN_URL is not set! Using default ADMIN_URL!"
 71 fi
 72 #如果是查看状态命令      
 73 if [ "$1" = "status" ]
 74   then       
 75   if [ "${WLS_PID}" = "" ] ; then
 76    echo "No pid - $SERVER_NAME is not running !"
 77     exit 1
 78  else
 79   echo "$SERVER_NAME is running !"
 80   exit 0
 81  fi
 82 fi
 83  
 84 #如果是停止命令  
 85 if [ "$1" = "stop" ]
 86 then       
 87 printf "Terminating $SERVER_NAME "
 88   if [ "${WLS_PID}" = "" ] ; then
 89     echo "No pid - $SERVER_NAME is not running !"
 90   else         
 91     kill -9 $WLS_PID
 92   wait_for_pid removed
 93   if [ -n "$try" ] ; then
 94   echo " failed "
 95   exit 1        
 96   fi
 97     echo " done ! "
 98     exit 0
 99  fi
100 else
101 #启动命令
102 printf "Starting $SERVER_NAME "
103  if [ "${WLS_PID}" = "" ] ; then
104     nohup sh $DOMAIN_PATH/bin/startWebLogic.sh &
105   else         
106     kill -9 $WLS_PID
107   wait_for_pid removed
108   if [ -n "$try" ] ; then
109   echo "restart failed "
110   exit 1        
111   fi
112     nohup sh $DOMAIN_PATH/bin/startWebLogic.sh &
113  fi
114   #if echo $SERVER_NAME|grep -q dmin ; then       
115   #   nohup sh $DOMAIN_PATH/bin/startWebLogic.sh &
116   # else       
117   #  nohup sh $DOMAIN_PATH/bin/startManagedWebLogic.sh $SERVER_NAME $ADMIN_URL &
118   # fi       
119   wait_for_pid created
120   if [ -n "$try" ] ; then
121     echo " failed "
122     exit 1
123   else
124     echo " done ! "
125     exit 0
126   fi  
127 fi
128 echo "To check the log, you may excute:"
129 echo "tail -100f "

 

liunx weblogic服务启停脚本

原文:https://www.cnblogs.com/tzhyy/p/9217645.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!