Browse Source

mysql: add mysql init script

[Thomas: explicitly specify the path to the PID file, and also on the
first boot, generate the mandatory MySQL system tables so that the
MySQL daemon actually starts properly.]

Signed-off-by: Marcelo Gutiérrez <kuyurix@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>

merge init script
Marcelo Gutiérrez(UTN/FRH) 11 năm trước cách đây
mục cha
commit
47af166209
2 tập tin đã thay đổi với 35 bổ sung0 xóa
  1. 30 0
      package/mysql/S97mysqld
  2. 5 0
      package/mysql/mysql.mk

+ 30 - 0
package/mysql/S97mysqld

@@ -0,0 +1,30 @@
+#!/bin/sh
+
+case "$1" in
+	start)
+		if [ ! -d /var/mysql/mysql ] ; then
+			echo "Creating MySQL system tables..."
+			mysql_install_db --user=mysql --ldata=/var/mysql
+		fi
+
+		# We don't use start-stop-daemon because mysqld has
+		# its own wrapper script.
+		echo -n "Starting mysql..."
+		/usr/bin/mysqld_safe --pid-file=/var/run/mysqld.pid &
+		echo "done."
+		;;
+	stop)
+		echo -n "Stopping mysql..."
+		if test -f /var/run/mysqld.pid ; then
+			kill `cat /var/run/mysqld.pid`
+		fi
+		echo "done."
+		;;
+	restart)
+		$0 stop
+		$0 start
+		;;
+	*)
+		echo "Usage: /etc/init.d/mysqld {start|stop|restart}"
+		;;
+esac

+ 5 - 0
package/mysql/mysql.mk

@@ -99,6 +99,11 @@ endef
 
 MYSQL_POST_INSTALL_TARGET_HOOKS += MYSQL_ADD_FOLDER
 
+define MYSQL_INSTALL_INIT_SYSV
+	$(INSTALL) -D -m 0755 package/mysql/S97mysqld \
+		$(TARGET_DIR)/etc/init.d/S97mysqld
+endef
+
 else
 MYSQL_CONF_OPT += \
 	--without-server