diff options
author | root <root@rshg054.dnsready.net> | 2012-10-31 01:35:35 -0700 |
---|---|---|
committer | root <root@rshg054.dnsready.net> | 2012-10-31 01:35:35 -0700 |
commit | 5827948456201df72a1bd73e87977c569129fb27 (patch) | |
tree | 4842639ddc958690e68f74c496ea60844200450b /community/percona-server/mysqld.rc | |
parent | 455295fdb5009a8cd7b033a93e01f7450fd3087b (diff) |
Wed Oct 31 01:34:59 PDT 2012
Diffstat (limited to 'community/percona-server/mysqld.rc')
-rw-r--r-- | community/percona-server/mysqld.rc | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/community/percona-server/mysqld.rc b/community/percona-server/mysqld.rc new file mode 100644 index 000000000..07f6b7e4c --- /dev/null +++ b/community/percona-server/mysqld.rc @@ -0,0 +1,77 @@ +#!/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 Percona Server" + [ ! -d /var/run/mysqld ] && install -d -g mysql -o mysql /var/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) > /var/run/mysqld/mysqld.pid + add_daemon mysqld + stat_done + fi + fi + else + stat_fail + exit 1 + fi + ;; + + stop) + stat_busy "Stopping Percona 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 /var/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 |