When log file is removed, mysqld_safe only starts when it is sure the mysqld
can create the log file, so we need to add the default log dir into set of
known directories.
rhbz#1482122
diff -up mysql-5.6.37/scripts/mysqld_safe.sh.logdir mysql-5.6.37/scripts/mysqld_safe.sh
--- mysql-5.6.37/scripts/mysqld_safe.sh.logdir 2017-06-02 19:42:10.000000000 +0200
+++ mysql-5.6.37/scripts/mysqld_safe.sh 2017-08-16 21:21:59.687608613 +0200
@@ -644,9 +644,10 @@ if [ $logging = "file" -o $logging = "bo
elif [ "x$user" = "xroot" ]; then # running as root, mysqld can create log file; continue
echo "Logging to '$err_log'." >&2
else
+ default_log_dir=`dirname "@LOG_LOCATION@"`
case $logdir in
# We can't create $err_log, however mysqld can; continue
- /tmp|/var/tmp|/var/log/mysql|$DATADIR)
+ /tmp|/var/tmp|$default_log_dir|$DATADIR)
;;
# We can't create $err_log and don't know if mysqld can; error out