summaryrefslogtreecommitdiff
path: root/support-files/mysql.server.sh
diff options
context:
space:
mode:
authormtaylor@qualinost.(none) <>2007-03-21 20:46:24 -0700
committermtaylor@qualinost.(none) <>2007-03-21 20:46:24 -0700
commitbd0b76e20d8971ee0ed4e3857a0043fab662394f (patch)
tree52ec9afbaee17285af735b1788f138ffcf7b61a0 /support-files/mysql.server.sh
parent02fc829ff6cd9deaed713bf6ca413e862538a8d4 (diff)
downloadmariadb-git-bd0b76e20d8971ee0ed4e3857a0043fab662394f.tar.gz
BUG#27367 mysql.server should be LSB init script compliant
Diffstat (limited to 'support-files/mysql.server.sh')
-rw-r--r--support-files/mysql.server.sh37
1 files changed, 30 insertions, 7 deletions
diff --git a/support-files/mysql.server.sh b/support-files/mysql.server.sh
index 65b56443eea..a907f81eb3f 100644
--- a/support-files/mysql.server.sh
+++ b/support-files/mysql.server.sh
@@ -359,20 +359,43 @@ case "$mode" in
fi
;;
- 'reload')
+ 'reload'|'force-reload')
if test -s "$server_pid_file" ; then
- mysqld_pid=`cat $server_pid_file`
+ read mysqld_pid < $server_pid_file
kill -HUP $mysqld_pid && log_success_msg "Reloading service MySQL"
touch $server_pid_file
else
log_failure_msg "MySQL PID file could not be found!"
+ exit 1
fi
;;
-
- *)
- # usage
- echo "Usage: $0 {start|stop|restart|reload} [ MySQL server options ]"
- exit 1
+ 'status')
+ # First, check to see if pid file exists
+ if [ -s "$server_pid_file" ] ; then
+ read mysqld_pid < $server_pid_file
+ if kill -0 $mysqld_pid 2>/dev/null ; then
+ log_success_msg "MySQL running ($mysqld_pid)"
+ exit 0
+ else
+ log_failure_msg "MySQL is not running, but PID file exists"
+ exit 1
+ fi
+ else
+ # Try to find appropriate mysqld process
+ mysqld_pid=`pidof $sbindir/mysqld`
+ if [ -z $mysqld_pid ] ; then
+ log_failure_msg "MySQL is not running"
+ exit 3
+ else
+ log_failure_msg "MySQL is running but PID file could not be found"
+ exit 4
+ fi
+ fi
+ ;;
+ *)
+ # usage
+ echo "Usage: $0 {start|stop|restart|reload|force-reload|status} [ MySQL server options ]"
+ exit 1
;;
esac