nginx php mysql 一键_mysql,nginx,redis,php一键启动脚本

1 #!/bin/bash2 php='/usr/local/php/sbin/php-fpm'

3 php_conf="/usr/local/php/etc/php-fpm.conf"

4 nginx="/usr/local/nginx/sbin/nginx"

5 nginx_conf="/usr/local/nginx/conf/nginx.conf"

6 mysql_pid_file="/usr/local/mysql/data/"`uname -n`.pid7 mysql="/usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=$mysql_pid_file"

8 redis="/usr/local/redis/bin/redis-server"

9 redis_conf="/usr/local/redis/redis.conf"

10 timeout=30

11 i=0

12

13 wait_for_pid(){14 i=0

15 always=1

16 while [[ $i -lt $timeout && $always = 1]]17 do

18 if test $1 =php19 then

20 pid=`ps aux | grep '[0-9] php-fpm: master'|awk '{print $2}'`21 elif test $1 =nginx22 then

23 pid=`ps aux | grep '[0-9] nginx: master'|awk '{print $2}'`24 elif test $1 =mysql25 then

26 pid=

27 if test -f $mysql_pid_file28 then

29 pid=`cat $mysql_pid_file 2>/dev/null`30 fi

31 elif test $1 =redis32 then

33 pid=`ps aux | grep 'redis-server \*:6379'|awk '{print $2}'`34 fi

35 if [[ $2 = 1 && -n "$pid"]]36 then

37 break38 elif [[ $2 = 0 && -z "$pid"]]39 then

40 break41 fi

42 let i+=1

43 if [[ -n "$3" && $3 -gt 0]]44 then

45 always=0

46 fi

47 sleep 1

48 done

49 echo -n $pid50

51 }52

53

54 case $2 in

55

56 start)57 if [[ $1 = php || $1 =all ]]58 then

59 pid=`wait_for_pid php 1 1`60 if test -n "$pid"

61 then

62 echo -e "\033[32m php-fpm started \033[0m"

63 else

64 $php -y $php_conf 2>&1 &

65 echo -n "php-fpm starting"

66 pid=`wait_for_pid php 1`67 if test -n "$pid"

68 then

69 echo -e "\033[32m [ok] \033[0m"

70 else

71 echo -e "\033[31m [ok] \033[0m"

72 fi

73 fi

74 fi

75 if [[ $1 = nginx || $1 =all ]]76 then

77 pid=`wait_for_pid nginx 1 1`78 if test -n "$pid"

79 then

80 echo -e "\033[32m nginx started \033[0m"

81 else

82 $nginx -c $nginx_conf 2>&1 &

83 echo -n "nginx starting"

84 pid=`wait_for_pid nginx 1`85 if test -n "$pid"

86 then

87 echo -e "\033[32m [ok] \033[0m"

88 else

89 echo -e "\033[31m [ok] \033[0m"

90 fi

91

92 fi

93 fi

94 if [[ $1 = mysql || $1 =all ]]95 then

96 pid=`wait_for_pid mysql 1 1`97 if test -n "$pid"

98 then

99 echo -e "\033[32m mysql started \033[0m"

100 else

101 $mysql > /dev/null &

102 echo -n "mysql starting"

103 pid=`wait_for_pid mysql 1`104 if test -n "$pid"

105 then

106 echo -e "\033[32m [ok] \033[0m"

107 else

108 echo -e "\033[31m [fail] \033[0m"

109 fi

110 fi

111 fi

112 if [[ $1 = redis || $1 =all ]]113 then

114 pid=`wait_for_pid redis 1 1`115 if test -n "$pid"

116 then

117 echo -e "\033[32m redis started \033[0m"

118 else

119 $redis $redis_conf120 echo -n "redis starting"

121 pid=`wait_for_pid redis 1`122 if test -n "$pid"

123 then

124 echo -e "\033[32m [ok] \033[0m"

125 else

126 echo -e "\033[31m [fail] \033[0m"

127 fi

128 fi

129 fi

130 ;;131 stop)132 if [[ $1 = php || $1 =all ]]133 then

134 pid=`wait_for_pid php 1 1`135 iftest $pid136 then

137 kill -INT $pid138 fi

139 echo -n "php stoping"

140 pid=`wait_for_pid php 0`141 if test -z "$pid"

142 then

143 echo -e "\033[32m [ok] \033[0m"

144 else

145 echo -e "\033[31m [ok] \033[0m"

146 fi

147 fi

148 if [[ $1 = nginx || $1 =all ]]149 then

150 pid=`wait_for_pid nginx 1 1`151 iftest $pid152 then

153 $nginx -s stop154 fi

155 echo -n "nginx stoping"

156 pid=`wait_for_pid nginx 0`157 if test -z "$pid"

158 then

159 echo -e "\033[32m [ok] \033[0m"

160 else

161 echo -e "\033[31m [fail] \033[0m"

162 fi

163 fi

164 if [[ $1 = mysql || $1 =all ]]165 then

166 pid=`wait_for_pid mysql 1 1`167 iftest $pid168 then

169 kill$pid170 fi

171 echo -n "mysql stoping"

172 pid=`wait_for_pid mysql 0`173 if test -z "$pid"

174 then

175 echo -e "\033[32m [ok] \033[0m"

176 else

177 echo -e "\033[31m [fail] \033[0m"

178 fi

179 fi

180 if [[ $1 = redis || $1 =all ]]181 then

182 pid=`wait_for_pid redis 1 1`183 iftest $pid184 then

185 kill$pid186 fi

187 echo -n "redis stoping"

188 pid=`wait_for_pid redis 0`189 if test -z "$pid"

190 then

191 echo -e "\033[32m [ok] \033[0m"

192 else

193 echo -e "\033[31m [fail] \033[0m"

194 fi

195 fi

196

197 ;;198 restart)199 if [[ $1 = php || $1 =all ]]200 then

201 pid=`wait_for_pid php 1 1`202 if test -n "$pid"

203 then

204 kill -USR2 $pid205 else

206 $php -y $php_conf 2>&1 &

207 fi

208 pid=`wait_for_pid php 1`209 if test -n "$pid"

210 then

211 echo -e "php restarting\033[32m [ok] \033[0m"

212 fi

213 fi

214 if [[ $1 = nginx || $1 =all ]]215 then

216 pid=`wait_for_pid nginx 1 1`217 if test -n "$pid"

218 then

219 $nginx -s reload220 else

221 $nginx -c $nginx_conf 2>&1

222 fi

223 pid=`wait_for_pid nginx 1`224 if test -n "$pid"

225 then

226 echo -e "nginx restarting \033[32m [ok] \033[0m"

227 fi

228 fi

229 if [[ $1 = mysql || $1 =all ]]230 then

231 pid=`wait_for_pid mysql 1 1`232 if test -n "$pid"

233 then

234 kill -HUP $pid235 else

236 $mysql > /dev/null &

237 fi

238 echo -n "mysql restarting"

239 pid=`wait_for_pid mysql 1`240 if [ -n "$pid"]241 then

242 echo -e "\033[32m [ok] \033[0m"

243 else

244 echo -e "\033[31m [fail] \033[0m"

245 fi

246 fi

247 if [[ $1 = redis || $1 =all ]]248 then

249 pid=`wait_for_pid redis 1 1`250 if test -n "$pid"

251 then

252 kill$pid253 fi

254 pid=`wait_for_pid redis 0`255 if test -z "$pid"

256 then

257 $redis $redis_conf258 fi

259 echo -n "redis restarting"

260 pid=`wait_for_pid redis 1`261 if [ -n "$pid"]262 then

263 echo -e "\033[32m [ok] \033[0m"

264 else

265 echo -e "\033[31m [fail] \033[0m"

266 fi

267 fi

268

269 ;;270 esac

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值