動作していない場合、mysql サーバーを自動再起動するための動作するシェル コードを探しています。これは、Google検索で見つけたコードウィッチです。3306ポートをリッスンし、機能しない場合は再起動します。再起動できない場合は、サーバーを再起動します。
このコードは機能しますか? そうでない場合、誰かが私に作業コードを共有できますか? syntax error near unexpected token
はいの場合、bash コードで done' に出会いました。どうすれば解決できますか? ありがとう。
PORT=`netstat -na|grep "LISTEN"|grep "3306"|awk -F[:" "]+ '{print $5}'`
MYSQLIP=`ifconfig eth0|awk '/inet/{print $2}'|cut -c 6-`
while [ `whoami` == "root" ]
do
if [ "$PORT" == "3306" ];then
echo "mysql is running......"
else
service mysql restart
if [ "$PORT" == "3306" ];then
else
reboot
fi
fi
break
done
コードを変更します:
PORT=`netstat -na|grep "LISTEN"|grep "3306"|awk -F[:" "]+ '{print $5}'`
MYSQLIP=`ifconfig eth0|awk '/inet/{print $2}'|cut -c 6-`
while [ `whoami` == "root" ]
do
if [ "$PORT" == "3306" ];then
echo "mysql is running......"
else
service mysql restart
if [ "$PORT" == "3306" ];then
:
else
reboot
fi
fi
break
done