From 74a1ee3d3f74d2c068985da8fbab58b40adcfd26 Mon Sep 17 00:00:00 2001 From: Bogdan Radulescu Date: Wed, 4 Jan 2017 12:41:55 +0200 Subject: [PATCH] Improvements to the systemd support. We now run as the MySQL user and fix permissions before running. --- Makefile | 6 +++--- systemd/proxysql.service | 10 ++++++++-- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/Makefile b/Makefile index 1c471f99d..623315708 100644 --- a/Makefile +++ b/Makefile @@ -13,7 +13,7 @@ DEBUG=${ALL_DEBUG} CURVER=1.4.0 MAKEOPT="-j 8" DISTRO := $(shell gawk -F= '/^NAME/{print $$2}' /etc/os-release) -ifeq ($(wildcard /usr/lib/systemd/systemd), /usr/lib/systemd/systemd) +ifeq ($(wildcard /usr/lib/systemd/system), /usr/lib/systemd/system) SYSTEMD=1 else SYSTEMD=0 @@ -395,7 +395,7 @@ cleanall: rm binaries/*rpm || true install: src/proxysql - install -m 0755 src/proxysql /usr/local/bin + install -m 0755 src/proxysql /usr/bin install -m 0600 etc/proxysql.cnf /etc if [ ! -d /var/lib/proxysql ]; then mkdir /var/lib/proxysql ; fi ifeq ($(SYSTEMD), 1) @@ -418,7 +418,7 @@ endif uninstall: rm /etc/proxysql.cnf - rm /usr/local/bin/proxysql + rm /usr/bin/proxysql rmdir /var/lib/proxysql 2>/dev/null || true ifeq ($(SYSTEMD), 1) systemctl stop proxysql.service diff --git a/systemd/proxysql.service b/systemd/proxysql.service index 7ea7df229..1dedf8541 100644 --- a/systemd/proxysql.service +++ b/systemd/proxysql.service @@ -3,10 +3,16 @@ Description=High Performance Advanced Proxy for MySQL After=network.target [Service] +Type=simple +User=mysql +Group=mysql +PermissionsStartOnly=true LimitNOFILE=102400 LimitCORE=1073741824 -ExecStart=/usr/local/bin/proxysql -f +ExecStartPre=/bin/mkdir -p /var/lib/proxysql +ExecStartPre=/bin/chown mysql:mysql -R /var/lib/proxysql /etc/proxysql.cnf +ExecStart=/usr/bin/proxysql -f Restart=always [Install] -WantedBy=default.target +WantedBy=multi-user.target