diff options
Diffstat (limited to 'community/percona-server/percona.install')
-rw-r--r-- | community/percona-server/percona.install | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/community/percona-server/percona.install b/community/percona-server/percona.install index 55f7cacee..c3b337ae1 100644 --- a/community/percona-server/percona.install +++ b/community/percona-server/percona.install @@ -1,15 +1,24 @@ +if [[ $(command -v my_print_defaults >/dev/null 2>&1) ]]; then + datadir=$(my_print_defaults mysqld | sed -n "s/^--datadir=//p") +fi +[[ -z $datadir ]] && datadir=/var/lib/mysql + post_install(){ groupadd -g 89 mysql &>/dev/null - useradd -u 89 -g mysql -d /var/lib/mysql -s /bin/false mysql &>/dev/null - usr/bin/mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql - chown -R mysql:mysql var/lib/mysql &>/dev/null + useradd -u 89 -g mysql -d $datadir -s /bin/false mysql &>/dev/null + + if [[ ! -e $datadir ]]; then + install -dm700 $datadir + usr/bin/mysql_install_db --user=mysql --basedir=/usr --datadir=$datadir + chown -R mysql:mysql $datadir &>/dev/null + fi usr/bin/systemd-tmpfiles --create mysqld.conf } post_upgrade(){ getent group mysql >/dev/null 2>&1 || groupadd -g 89 mysql &>/dev/null - getent passwd mysql >/dev/null 2>&1 || useradd -u 89 -g mysql -d /var/lib/mysql -s /bin/false mysql &>/dev/null + getent passwd mysql >/dev/null 2>&1 || useradd -u 89 -g mysql -d $datadir -s /bin/false mysql &>/dev/null if [ "$(vercmp $2 5.5)" -lt 0 ]; then echo " >> " |