#!/bin/sh set -e MYSQLD=/usr/sbin/mysqld dir=`dirname $0` ROOT=$dir/mysqld PID_FILE="$ROOT/mysql.pid" MY_CNF="$ROOT/my.cnf" PORT=3316 ROOTPW=123456 usage() { me=`basename $0` echo "$me: runs a local instance of apache (on port $PORT)" echo "Usage: $me - the usual" echo "Usage: $me - install / remove the databases" } run_mysqld() { $MYSQLD \ --defaults-file=$MY_CNF \ --basedir=$ROOT \ --pid-file=$PID_FILE \ --port=$PORT \ --socket=$ROOT/socket \ "$@" & } run_mysql_upgrade() { mysql_upgrade \ --defaults-file=$MY.CNF \ "$@" } init_mysql() { ( echo "CREATE DATABASE mysql;" #echo "GRANT ALL on *.* to 'root'@'localhost' identified by '$ROOTPW';" echo "USE mysql;" cat /usr/share/mysql/mysql_system_tables.sql echo "UPDATE user SET password=PASSWORD("$ROOTPW") WHERE user='root';" echo "FLUSH PRIVILEGES;" ) | run_mysqld --bootstrap --skip-grant-tables set -x run_mysqld sleep 5 run_mysql_upgrade "$0" stop set +x } case "$1" in start) shift; run_mysqld "$@";; init) init_mysql;; stop) kill `cat "$PID_FILE"`;; restart) "$0" stop #sleep 1 "$0" start ;; reload) kill -HUP `cat "$PID_FILE"`;; status) if [ -f "$PID_FILE" ]; then ps `cat "$PID_FILE"` else echo "Not running" fi ;; clean) # TODO: stop? Check if we're alive? rm -rf $ROOT/data/* ;; *) usage; exit 1;; esac