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) echo "Logging to '$err_log'." >&2 ;; # We can't create $err_log and don't know if mysqld can; error out