miércoles, 18 de abril de 2012

Restart automático de Mysql vía script (no cron)


Conversaba con un amigo anoche y me contó que necesitaba un script que reiniciara Mysql automáticamente cada vez que se caía,y  sin cron disponible, quedó la opción de armar un script en loop infinito y correrlo con nohup.


vi myrestart.sh

#!/bin/bash
#
# loop infinito con espera de 10 min.
# entre ejecuciones del comando del medio
#
for (( ; ; ))
do
   echo "infinite loops [ hit CTRL+C to stop]"
    MysqldThread=`ps -A|grep mysql|wc -l`


    if [ $MysqldThread -eq 0 ]
      then
      /etc/init.d/mysql start
    fi
    sleep 10m
done

chmod +x myrestart.sh


nohup myrestart.sh


Snipets from:
http://www.cyberciti.biz/faq/bash-for-loop/
http://www.doxer.org/learn-linux/auto-monitor-your-server-status-and-restart-or-reboot-serverbash-shell-script/



No hay comentarios: