1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103
|
#!/bin/bash
#
### BEGIN INIT INFO
# Provides: mysql-ndb
# Required-Start: $syslog mysql mysql-ndb-mgm
# Required-Stop: $syslog mysql mysql-ndb-mgm
# Should-Start: $local_fs $remote_fs $network $named $time
# Should-Stop: $local_fs $remote_fs $network $named $time
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start and stop the mysql database cluster server daemon
# Description: Controls the MySQL NDB Data Node daemon "ndbd".
### END INIT INFO
#
set -e
set -u
${DEBIAN_SCRIPT_DEBUG:+ set -v -x}
# Variables
SELF=$(cd $(dirname $0); pwd -P)/$(basename $0)
DAEMON=/usr/sbin/ndbd
CONF=/etc/mysql/my.cnf
export HOME=/etc/mysql/
# Safeguard (relative paths, core dumps..)
cd /
umask 077
# Exit *silently* if we're not supposed to be started.
#
# The Debian scripts should execute these scripts to stop and start
# the daemon when upgrading if it is started. On the other hand it should
# remain silently if the server has not even been configured.
# See /usr/share/doc/mysql-server-*/README.Debian for more information.
test -x $DAEMON || exit 0
if $DAEMON --help | grep -q '^ndb-connectstring.*No default value'; then exit 0; fi
. /lib/lsb/init-functions
#
# main()
#
case "${1:-''}" in
'start')
# Start daemon
# Creatign a PID file does not work as the master process forks
# a child with different PID and then terminates itself.
log_daemon_msg "Starting MySQL NDB Data Node" "ndbd"
if start-stop-daemon \
--start \
--exec $DAEMON \
--user mysql
then
log_end_msg 0
else
log_end_msg 1
log_warning_msg "Please take a look at the syslog."
exit 1
fi
;;
'start-initial')
# Perform an initial start of ndbd
log_daemon_msg "Initial start of MySQL NDB Data Node" "ndbd"
if start-stop-daemon \
--start \
--exec $DAEMON \
--user mysql \
-- --initial
then
log_end_msg 0
else
log_end_msg 1
log_warning_msg "Please take a look at the syslog."
exit 1
fi
;;
'stop')
log_daemon_msg "Stopping MySQL NDB Data Node" "ndbd"
if start-stop-daemon \
--stop \
--oknodo \
--exec $DAEMON
then
log_end_msg 0
else
log_end_msg 1
exit 1
fi
;;
'restart'|'force-reload')
set +e; $SELF stop; set -e
$SELF start
;;
*)
echo "Usage: $SELF start|start-initial|stop|restart|force-reload"
echo " * start-initial starts ndbd with '--initial'"
exit 1
;;
esac
|