diff options
author | root <root@rshg054.dnsready.net> | 2012-08-04 00:02:16 +0000 |
---|---|---|
committer | root <root@rshg054.dnsready.net> | 2012-08-04 00:02:16 +0000 |
commit | f8ac5d4703080cc87ba2fe36f68df745d3a5f62f (patch) | |
tree | 641ccb335800a868031ab1d89d554e5c1b0f0d9a /community/mariadb | |
parent | 60f7eab28ba0dd57c8ce519609f393dd3931b621 (diff) |
Sat Aug 4 00:02:16 UTC 2012
Diffstat (limited to 'community/mariadb')
-rw-r--r-- | community/mariadb/PKGBUILD | 15 | ||||
-rwxr-xr-x | community/mariadb/rc.d | 77 | ||||
-rw-r--r-- | community/mariadb/service | 21 | ||||
-rw-r--r-- | community/mariadb/tmpfiles.conf | 1 |
4 files changed, 109 insertions, 5 deletions
diff --git a/community/mariadb/PKGBUILD b/community/mariadb/PKGBUILD index 39a7feba4..c464a1a9b 100644 --- a/community/mariadb/PKGBUILD +++ b/community/mariadb/PKGBUILD @@ -1,19 +1,21 @@ -# $Id: PKGBUILD 74223 2012-07-23 03:08:05Z allan $ +# $Id: PKGBUILD 74694 2012-08-02 08:13:12Z bpiotrowski $ # Maintainer: Bartłomiej Piotrowski <nospam@bpiotrowski.pl> pkgbase=mariadb pkgname=('libmariadbclient' 'mariadb-clients' 'mariadb') pkgver=5.5.25 -pkgrel=2 +pkgrel=3 arch=('i686' 'x86_64') license=('GPL') url="http://mariadb.org/" makedepends=('cmake' 'openssl' 'zlib') options=('!libtool') source=(http://mirrors.supportex.net/$pkgbase/$pkgbase-$pkgver/kvm-tarbake-jaunty-x86/$pkgbase-$pkgver.tar.gz - mysqld) + service rc.d tmpfiles.conf) md5sums=('943f67c267d73a4080ab497e11740daf' - '3bb5a9a96340feb0184bc057ee6e330b') + '9e7aa0fa646f48662df569259061fcef' + '3bb5a9a96340feb0184bc057ee6e330b' + '32f30449d3111714fe190931d08fdb8c') build() { cd "${srcdir}" @@ -113,7 +115,10 @@ package_mariadb() { make DESTDIR="${pkgdir}" install install -Dm644 "${pkgdir}"/usr/share/mysql/my-medium.cnf "${pkgdir}"/etc/mysql/my.cnf - install -Dm755 "${srcdir}"/mysqld "${pkgdir}"/etc/rc.d/mysqld + install -Dm755 "${srcdir}"/rc.d "${pkgdir}"/etc/rc.d/mysqld + + install -Dm644 "${srcdir}"/service "${pkgdir}"/usr/lib/systemd/system/mysql.service + install -Dm644 "${srcdir}"/tmpfiles.conf "${pkgdir}"/usr/lib/tmpfiles.d/mysql.conf # provided by libmariadbclient rm "${pkgdir}"/usr/bin/{mysql_config,mysql_client_test_embedded,mysqltest_embedded} diff --git a/community/mariadb/rc.d b/community/mariadb/rc.d new file mode 100755 index 000000000..e9fe8f5a8 --- /dev/null +++ b/community/mariadb/rc.d @@ -0,0 +1,77 @@ +#!/bin/bash + +# general config +. /etc/rc.conf +. /etc/rc.d/functions + +getPID() { + echo $(pgrep -u mysql mysqld 2>/dev/null); +} + +case "$1" in + start) + stat_busy "Starting MariaDB Server" + [ ! -d /var/run/mysqld ] && install -d -g mysql -o mysql /var/run/mysqld &>/dev/null + if [ -z "$(getPID)" ]; then + /usr/bin/mysqld_safe --user=mysql &>/dev/null & + if [ $? -gt 0 ]; then + stat_fail + exit 1 + else + timeo=30 + while [ $timeo -gt 0 ]; do + response=`/usr/bin/mysqladmin -uUNKNOWN_USER ping 2>&1` && break + echo "$response" | grep -q "mysqld is alive" && break + sleep 1 + let timeo=${timeo}-1 + done + if [ $timeo -eq 0 ]; then + stat_fail + exit 1 + else + echo $(getPID) > /var/run/mysqld/mysqld.pid + add_daemon mysqld + stat_done + fi + fi + else + stat_fail + exit 1 + fi + ;; + + stop) + stat_busy "Stopping MariaDB Server" + if [ ! -z "$(getPID)" ]; then + timeo=30 + kill $(getPID) &> /dev/null + if [ $? -gt 0 ]; then + stat_fail + exit 1 + fi + while [ ! -z "$(getPID)" -a $timeo -gt 0 ]; do + sleep 1 + let timeo=${timeo}-1 + done + if [ -z "$(getPID)" ]; then + rm -f /var/run/mysqld/mysqld.pid &>/dev/null + rm_daemon mysqld + stat_done + else + stat_fail + exit 1 + fi + else + stat_fail + exit 1 + fi + ;; + + restart) + $0 stop + $0 start + ;; + *) + echo "usage: $0 {start|stop|restart}" +esac +exit 0 diff --git a/community/mariadb/service b/community/mariadb/service new file mode 100644 index 000000000..1b3a50082 --- /dev/null +++ b/community/mariadb/service @@ -0,0 +1,21 @@ +[Unit] +Description=MariaDB database server +After=syslog.target network.target + +[Service] +User=mysql +Group=mysql + +ExecStart=/usr/bin/mysqld --pid-file=/var/run/mysqld/mysqld.pid +ExecStop=/bin/kill -15 $MAINPID +PIDFile=/var/run/mysqld/mysqld.pid +WorkingDirectory=/usr + +# We rely on systemd, not mysqld_safe, to restart mysqld if it dies +Restart=always + +# Place temp files in a secure directory, not /tmp +PrivateTmp=true + +[Install] +WantedBy=multi-user.target diff --git a/community/mariadb/tmpfiles.conf b/community/mariadb/tmpfiles.conf new file mode 100644 index 000000000..74cd5f836 --- /dev/null +++ b/community/mariadb/tmpfiles.conf @@ -0,0 +1 @@ +d /var/run/mysqld 0755 mysql mysql - |