summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--scripts/mysql_install_db.sh6
-rw-r--r--support-files/mysql.spec.sh2
2 files changed, 6 insertions, 2 deletions
diff --git a/scripts/mysql_install_db.sh b/scripts/mysql_install_db.sh
index c03049c6a91..931c8f21a92 100644
--- a/scripts/mysql_install_db.sh
+++ b/scripts/mysql_install_db.sh
@@ -38,6 +38,9 @@ parse_arguments() {
--basedir=*) basedir=`echo "$arg" | sed -e 's/^[^=]*=//'` ;;
--ldata=*|--datadir=*) ldata=`echo "$arg" | sed -e 's/^[^=]*=//'` ;;
--user=*) user=`echo "$arg" | sed -e 's/^[^=]*=//'` ;;
+ # Note that this will be passed to mysqld so that it runs
+ # as 'user' (crucial e.g. if log-bin=/some_other_path/
+ # where a chown of datadir won't help)
--skip-name-resolve) ip_only=1 ;;
--verbose) verbose=1 ;;
--rpm) in_rpm=1 ;;
@@ -332,7 +335,8 @@ fi
echo "Installing all prepared tables"
if eval "$mysqld $defaults $mysqld_opt --bootstrap --skip-grant-tables \
- --basedir=$basedir --datadir=$ldata --skip-innodb --skip-bdb $args" << END_OF_DATA
+ --basedir=$basedir --datadir=$ldata --skip-innodb --skip-bdb \
+ --user=$user $args" << END_OF_DATA
use mysql;
$c_d
$i_d
diff --git a/support-files/mysql.spec.sh b/support-files/mysql.spec.sh
index 714992e0826..5ddc19580f3 100644
--- a/support-files/mysql.spec.sh
+++ b/support-files/mysql.spec.sh
@@ -395,7 +395,7 @@ useradd -M -r -d $mysql_datadir -s /bin/bash -c "MySQL server" mysql 2> /dev/nul
chown -R mysql $mysql_datadir
# Initiate databases
-mysql_install_db -IN-RPM
+mysql_install_db -IN-RPM --user=mysql
# Change permissions again to fix any new files.
chown -R mysql $mysql_datadir