2012-01-12 20:40:29 +00:00
|
|
|
#!/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"
|
2012-08-20 12:27:25 +00:00
|
|
|
[ ! -d /run/mysqld ] && install -d -g mysql -o mysql /run/mysqld &>/dev/null
|
2012-01-12 20:40:29 +00:00
|
|
|
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
|
2012-08-20 12:27:25 +00:00
|
|
|
echo $(getPID) > /run/mysqld/mysqld.pid
|
2012-01-12 20:40:29 +00:00
|
|
|
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
|
2012-08-20 12:27:25 +00:00
|
|
|
rm -f /run/mysqld/mysqld.pid &>/dev/null
|
2012-01-12 20:40:29 +00:00
|
|
|
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
|