#!/bin/sh # # mysql A very fast and reliable SQL database engine # # chkconfig: 2345 90 90 # # description: A very fast and reliable SQL database engine. # # pidfile: /var/state/mysql/mysqld.pid # Source function library . /etc/rc.d/init.d/functions # Get network config . /etc/sysconfig/network # Get service config if [ -f /etc/sysconfig/mysql ] ; then . /etc/sysconfig/mysql if [ -z "${MYSQL_DATA_DIR}" ]; then MYSQL_DATA_DIR=/var/state/mysql fi else MYSQL_DATA_DIR=/var/state/mysql fi # Check that networking is up. if [ "${NETWORKING}" = "no" ]; then echo "WARNING: Networking is down. Mysql service can't be runed." exit 1 fi case "$1" in start) # Check if the service is already running? if [ ! -d "$MYSQL_DATA_DIR/mysql" ]; then echo "Mysq database not initialized. Try \"$0 init\" before start." exit 1 fi if [ ! -f /var/lock/subsys/mysql ]; then show Starting mysql nohup daemon /usr/sbin/mysqld -u mysql --datadir=$MYSQL_DATA_DIR touch /var/lock/subsys/mysql else echo "Mysql already is running" fi ;; stop) show Stopping mysql service killproc mysqld sleep 2 rm -f /var/state/mysql/mysqld.pid rm -f /var/lock/subsys/mysql ;; status) status mysqld ;; restart|reload) $0 stop $0 start ;; init) # Check if not exist init database if [ ! -d "$MYSQL_DATA_DIR/mysql" ]; then show Creating privilege mysql tables started TMP=/tmp TMPDIR=/tmp mysql_install_db &>/tmp/initdb.mysql show Creating privilege mysql tables ok echo "Now You can setup database administrator password by:" echo "# mysqladmimn -u mysql -h password " else echo "Semms that database is initialized now. Remove by hand $MYSQL_DATA_DIR/mysql" echo "before initialize database.". fi ;; *) echo "Usage: mysql {start|stop|status|restart|reload|init}" exit 1 ;; esac