Welcome, guest! Login / Register - Why register?
Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so dont bother with any of their useless mail servers here and just use oauth login instead. Thank the nice Russians for causing that. :)

Paste

Pasted as Plain Text by dscrd ( 13 years ago )
#!/bin/bash

# general config
. /etc/rc.conf
. /etc/rc.d/functions

getPID() {
   echo $(pgrep -u mysql mysqld 2>/dev/null);
}

case "$1" in
  start)
    stat_busy "Starting MySQL Server"
    [ ! -d /run/mysqld ] && install -d -g mysql -o mysql /run/mysqld &>/dev/null
    if [ -z "$(getPID)" ]; then
       /usr/bin/mysqld_safe --user=mysql &>/dev/null &
      if [ $? -gt 0 ]; then
        stat_fail
        exit 1
      else
        timeo=30
        while [ $timeo -gt 0 ]; do
          response=`/usr/bin/mysqladmin -uUNKNOWN_USER ping 2>&1` && break
          echo "$response" | grep -q "mysqld is alive" && break
          sleep 1
          let timeo=${timeo}-1
        done
        if [ $timeo -eq 0 ]; then
          stat_fail
          exit 1
        else
          echo $(getPID) > /run/mysqld/mysqld.pid
          add_daemon mysqld
          stat_done
        fi
      fi
    else
      stat_fail
      exit 1
    fi
    ;;

  stop)
    stat_busy "Stopping MySQL Server"
    if [ ! -z "$(getPID)" ]; then
      timeo=30
      kill $(getPID) &> /dev/null
      if [ $? -gt 0 ]; then
        stat_fail
        exit 1
      fi
      while [ ! -z "$(getPID)" -a $timeo -gt 0 ]; do
        sleep 1
        let timeo=${timeo}-1
      done
      if [ -z "$(getPID)" ]; then
        rm -f /run/mysqld/mysqld.pid &>/dev/null
        rm_daemon mysqld
        stat_done
      else
        stat_fail
        exit 1
      fi
    else
      stat_fail
      exit 1
    fi
    ;;

  restart)
    $0 stop
    $0 start
    ;;
  *)
    echo "usage: $0 {start|stop|restart}"
esac
exit 0

 

Revise this Paste

Your Name: Code Language: