]> git.pld-linux.org Git - packages/mysql.git/commitdiff
- synced changes from MYSQL_5_0 branch
authorElan Ruusamäe <glen@pld-linux.org>
Mon, 16 Jul 2007 17:57:50 +0000 (17:57 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    mysql.init -> 1.118

mysql.init

index 8f25e33a76a396bc9119365c4d78c23c208b1564..1bde1ef748a3b12055e52667ef7529ca1278dd4a 100644 (file)
@@ -242,14 +242,30 @@ mysqlstart() {
        busy
        [ -z "$DEFAULT_SERVICE_RUN_NICE_LEVEL" ] && DEFAULT_SERVICE_RUN_NICE_LEVEL=0
        rm -f "$MYSQL_PIDFILE"
-       TMPDIR=/tmp nice -n ${SERVICE_RUN_NICE_LEVEL:-$DEFAULT_SERVICE_RUN_NICE_LEVEL} /usr/bin/setsid /usr/sbin/mysqld --defaults-file=$MYSQL_CONFIG --datadir=$MYSQL_DATA_DIR --pid-file=$MYSQL_PIDFILE $MYSQL_OPTIONS >> $MYSQL_ERRLOG 2>&1 &
-       sleep 0.2
+
+       TMPDIR=/tmp nice -n ${SERVICE_RUN_NICE_LEVEL:-$DEFAULT_SERVICE_RUN_NICE_LEVEL} \
+               /usr/bin/setsid /usr/sbin/mysqld \
+                       --defaults-file=$MYSQL_CONFIG \
+                       --datadir=$MYSQL_DATA_DIR \
+                       --pid-file=$MYSQL_PIDFILE $MYSQL_OPTIONS \
+               >> $MYSQL_ERRLOG 2>&1 &
+       pid=$!
+
+       sleep 0.1
        mysqlstatus "$clusterdir" start
        # it takes longer for mysqld to start and create pidfile if it has to recover innodb transactions
        if [ "$MYSQL_STATUS" = "starting" ]; then
-               for nr in $(seq 1 $(($MYSQL_START_WAIT_TIME*10))); do
+               echo ""
+               show "Waiting for MySQL to start"
+               busy
+
+               # while the pid is running, mysql is starting up
+               # if the pidfile was created, it started up successfully
+               # if either case fails we break and report status
+               while true; do
+                       [ -d /proc/$pid ] || break
                        [ -f "$MYSQL_PIDFILE" ] && break
-                       sleep 0.1
+                       sleep 0.2
                done
        fi
 
@@ -366,7 +382,7 @@ mysqlinit() {
                exit 1
        fi
 
-       mkdir -p "$MYSQL_DATA_DIR"
+       mkdir -p "$MYSQL_DATA_DIR" > /dev/null 2>&1
        # Using mysql:mysql for MYSQL_CLUSTER_DIR is creating SECURITY hole, root:root is proper
        chown root:root "$MYSQL_CLUSTER_DIR"
     chown mysql:mysql "$MYSQL_CLUSTER_DIR/mysqldb" "$MYSQL_DATA_DIR" > /dev/null 2>&1
@@ -397,10 +413,11 @@ EOF
 
        ok=0
        /usr/sbin/mysqld --bootstrap --skip-grant-tables \
-               --datadir=$MYSQL_DATA_DIR --user=$MYSQL_USER < \
+               --datadir=$MYSQL_DATA_DIR --user=$MYSQL_USER \
+               --slave-load-tmpdir=$MYSQL_DATA_DIR --tmpdir=$MYSQL_DATA_DIR < \
                $MYSQL_DATA_DIR/mysql-init.sql 2>> /var/log/mysql/err && ok=1
-
        [ -f $MYSQL_DATA_DIR/mysql/host.frm ] || ok=0
+
        if [ "$ok" = 1 ]; then
                rm -f $MYSQL_DATA_DIR/mysql-init.sql
            ok
This page took 0.066297 seconds and 4 git commands to generate.