From 40f8062ad0f8be911ba067faf99e4081d0a5a05d Mon Sep 17 00:00:00 2001 From: Alex Suykov Date: Sat, 23 May 2015 13:15:18 +0300 Subject: [PATCH] mysql: systemd support Service startup follows sysv initscript and includes db init. [Thomas: use a relative symlink rather than an absolute symlink.] Signed-off-by: Alex Suykov Signed-off-by: Thomas Petazzoni --- package/mysql/mysql.mk | 8 ++++++++ package/mysql/mysqld.service | 10 ++++++++++ 2 files changed, 18 insertions(+) create mode 100644 package/mysql/mysqld.service diff --git a/package/mysql/mysql.mk b/package/mysql/mysql.mk index 8718193257..c6d9f3a356 100644 --- a/package/mysql/mysql.mk +++ b/package/mysql/mysql.mk @@ -103,6 +103,14 @@ define MYSQL_INSTALL_INIT_SYSV $(TARGET_DIR)/etc/init.d/S97mysqld endef +define MYSQL_INSTALL_INIT_SYSTEMD + $(INSTALL) -D -m 644 package/mysql/mysqld.service \ + $(TARGET_DIR)/usr/lib/systemd/system/mysqld.service + mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants + ln -sf ../../../../usr/lib/systemd/system/mysqld.service \ + $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/mysqld.service +endef + else MYSQL_CONF_OPTS += \ --without-server diff --git a/package/mysql/mysqld.service b/package/mysql/mysqld.service new file mode 100644 index 0000000000..2ded9c2728 --- /dev/null +++ b/package/mysql/mysqld.service @@ -0,0 +1,10 @@ +[Unit] +Description=MySQL database server + +[Service] +ExecStartPre=/bin/sh -c 'test -d /var/mysql/mysql || mysql_install_db --user=mysql --ldata=/var/mysql' +ExecStart=/usr/bin/mysqld_safe +Restart=always + +[Install] +WantedBy=multi-user.target -- 2.30.2