From 441f3cee6693113eff48ce8857043b3648dfacb4 Mon Sep 17 00:00:00 2001 From: Christoph Date: Sat, 12 Aug 2023 22:57:51 +0200 Subject: [PATCH] mysql_backup.sh: add 'Create user' scripts.. --- hosts/scripts/mysql_backup.sh | 418 ++++++++++++++++++++++++++-------- 1 file changed, 319 insertions(+), 99 deletions(-) diff --git a/hosts/scripts/mysql_backup.sh b/hosts/scripts/mysql_backup.sh index bbd7df5..de73329 100755 --- a/hosts/scripts/mysql_backup.sh +++ b/hosts/scripts/mysql_backup.sh @@ -254,14 +254,14 @@ if $ARCHIVE ;then if [ -n "$mysql_credential_args" ] ; then $( $ssh $ssh_options ${ssh_user}@$srcHost "$mysql $mysql_credential_args -N -s -A -e\"SELECT CONCAT('SHOW GRANTS FOR ''',user,'''@''',host,''';') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'\" | $mysql $mysql_credential_args -N -s -A | sed 's/\$/;/g'" \ - > ${_backupDestArchiveDir}/MySQLGrants.sql-${filedate}.sql 2> $err_Log + > ${_backupDestArchiveDir}/MySQLGrants-${filedate}.sql 2> $err_Log exit $? ) retval=$? else $( $ssh $ssh_options ${ssh_user}@$srcHost "$mysql -u$mysql_user -p$mysql_password -N -s -A -e\"SELECT CONCAT('SHOW GRANTS FOR ''',user,'''@''',host,''';') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'\" | $mysql -u$mysql_user -p$mysql_password -N -s -A | sed 's/\$/;/g'" \ - > ${_backupDestArchiveDir}/MySQLGrants.sql-${filedate}.sql 2> $err_Log + > ${_backupDestArchiveDir}/MySQLGrants-${filedate}.sql 2> $err_Log exit $? ) retval=$? @@ -270,14 +270,14 @@ if $ARCHIVE ;then if [ -n "$mysql_credential_args" ] ; then $( $mysql $mysql_credential_args -N -s -A -e"SELECT CONCAT('SHOW GRANTS FOR ''',user,'''@''',host,''';') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'" | $mysql $mysql_credential_args -N -s -A | sed 's/\$/;/g' \ - > ${_backupDestArchiveDir}/MySQLGrants.sql-${filedate}.sql 2> $err_Log + > ${_backupDestArchiveDir}/MySQLGrants-${filedate}.sql 2> $err_Log exit $? ) retval=$? else $( $mysql -u$mysql_user -p$mysql_password -N -s -A -e"SELECT CONCAT('SHOW GRANTS FOR ''',user,'''@''',host,''';') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'" | $mysql -u$mysql_user -p$mysql_password -N -s -A | sed 's/\$/;/g' \ - > ${_backupDestArchiveDir}/MySQLGrants.sql-${filedate}.sql 2> $err_Log + > ${_backupDestArchiveDir}/MySQLGrants-${filedate}.sql 2> $err_Log exit $? ) retval=$? @@ -291,9 +291,9 @@ if $ARCHIVE ;then if [ "$retval" = 0 ];then [ -z $mysql_gzip ] && mysql_gzip=false if $mysql_gzip ; then - $gzip ${_backupDestArchiveDir}/MySQLGrants.sql-${filedate}.sql 2> $err_Log + $gzip ${_backupDestArchiveDir}/MySQLGrants-${filedate}.sql 2> $err_Log retval=$? - err_msg="Cannot gzip \"MySQLGrants.sql-${filedate}.sql\"" + err_msg="Cannot gzip \"MySQLGrants-${filedate}.sql\"" keep_backup_on_error=true fi fi @@ -325,7 +325,7 @@ if $ARCHIVE ;then echolog "" echolog "\t[ERROR] ${err_msg} [ $duration ]\n\t`$cat $err_Log`\n" if ! $keep_backup_on_error ; then - rm -f ${_backupDestArchiveDir}/MySQLGrants.sql-${filedate}.sql + rm -f ${_backupDestArchiveDir}/MySQLGrants-${filedate}.sql fi else @@ -358,9 +358,9 @@ if $ARCHIVE ;then if [ "$MYSQL_VERSION_NUM" -ge 050700 ]; then ## ----------------------------- - ## - Backup/Create User Craetion sql statements (00) + ## - Backup/Create User Craetion sql statements MySQL (00) ## - - info_msg="create User creation SQL file (00)" + info_msg="create User creation SQL file MySQL (00)" echononl "\t$info_msg" ## - begin timestamp @@ -373,14 +373,14 @@ if $ARCHIVE ;then if [ -n "$mysql_credential_args" ] ; then $( $ssh $ssh_options ${ssh_user}@$srcHost "$mysql $mysql_credential_args -N -s -A -e\"SELECT CONCAT('SHOW CREATE USER ''',user,'''@''',host,''';') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'\" | $mysql $mysql_credential_args -N -s -A | sed 's/\$/;/g'" \ - > ${_backupDestArchiveDir}/MySQLCreateUser-00.sql-${filedate}.sql 2> $err_Log + > ${_backupDestArchiveDir}/MySQLCreateUser-00-${filedate}.sql 2> $err_Log exit $? ) retval=$? else $( $ssh $ssh_options ${ssh_user}@$srcHost "$mysql -u$mysql_user -p$mysql_password -N -s -A -e\"SELECT CONCAT('SHOW CREATE USER ''',user,'''@''',host,''';') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'\" | $mysql $mysql_credential_args -N -s -A | sed 's/\$/;/g'" \ - > ${_backupDestArchiveDir}/MySQLCreateUser-00.sql-${filedate}.sql 2> $err_Log + > ${_backupDestArchiveDir}/MySQLCreateUser-00-${filedate}.sql 2> $err_Log exit $? ) retval=$? @@ -389,14 +389,14 @@ if $ARCHIVE ;then if [ -n "$mysql_credential_args" ] ; then $( $mysql $mysql_credential_args -N -s -A -e"SELECT CONCAT('SHOW CREATE USER ''',user,'''@''',host,''';') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'" | $mysql $mysql_credential_args -N -s -A | sed 's/\$/;/g' \ - > ${_backupDestArchiveDir}/MySQLCreateUser-00.sql-${filedate}.sql 2> $err_Log + > ${_backupDestArchiveDir}/MySQLCreateUser-00-${filedate}.sql 2> $err_Log exit $? ) retval=$? else $( - $mysql $mysql_credential_args -N -s -A -e"SELECT CONCAT('SHOW CREATE USER ''',user,'''@''',host,''';') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'" | $mysql $mysql_credential_args -N -s -A | sed 's/\$/;/g' \ - > ${_backupDestArchiveDir}/MySQLCreateUser-00.sql-${filedate}.sql 2> $err_Log + $mysql -u$mysql_user -p$mysql_password -N -s -A -e"SELECT CONCAT('SHOW CREATE USER ''',user,'''@''',host,''';') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'" | $mysql $mysql_credential_args -N -s -A | sed 's/\$/;/g' \ + > ${_backupDestArchiveDir}/MySQLCreateUser-00-${filedate}.sql 2> $err_Log exit $? ) retval=$? @@ -404,15 +404,15 @@ if $ARCHIVE ;then fi - err_msg="Cannot create User Creation SQL file (00)" + err_msg="Cannot create User Creation SQL file MySQL (00)" keep_backup_on_error=false if [ "$retval" = 0 ];then [ -z $mysql_gzip ] && mysql_gzip=false if $mysql_gzip ; then - $gzip ${_backupDestArchiveDir}/MySQLCreateUser-00.sql-${filedate}.sql 2> $err_Log + $gzip ${_backupDestArchiveDir}/MySQLCreateUser-00-${filedate}.sql 2> $err_Log retval=$? - err_msg="Cannot gzip \"MySQLCreateUser-00.sql-${filedate}.sql\"" + err_msg="Cannot gzip \"MySQLCreateUser-00-${filedate}.sql\"" keep_backup_on_error=true fi fi @@ -444,7 +444,7 @@ if $ARCHIVE ;then echolog "" echolog "\t[ERROR] ${err_msg} [ $duration ]\n\t`$cat $err_Log`\n" if ! $keep_backup_on_error ; then - rm -f ${_backupDestArchiveDir}/MySQLCreateUser-00.sql-${filedate}.sql + rm -f ${_backupDestArchiveDir}/MySQLCreateUser-00-${filedate}.sql fi else @@ -464,14 +464,14 @@ if $ARCHIVE ;then echolog " [ $duration ]" fi - ## - End: Backup/Create User Craetion sql statements (00) + ## - End: Backup/Create User Craetion sql statements MySQL (00) ## ---------------------------------- ## ----------------------------- - ## - Backup/Create User Craetion sql statements (01) + ## - Backup/Create User Craetion sql statements MySQL (01) ## - - info_msg="create User creation SQL file (01)" + info_msg="create User creation SQL file MySQL (01)" echononl "\t$info_msg" ## - begin timestamp @@ -484,14 +484,14 @@ if $ARCHIVE ;then if [ -n "$mysql_credential_args" ] ; then $( $ssh $ssh_options ${ssh_user}@$srcHost "$mysql $mysql_credential_args -N -s -A -e\"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED WITH mysql_native_password ; UPDATE user SET authentication_string = ''',authentication_string,''' WHERE user = ''',user,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'\"" \ - > ${_backupDestArchiveDir}/MySQLCreateUser-01.sql-${filedate}.sql 2> $err_Log + > ${_backupDestArchiveDir}/MySQLCreateUser-01-${filedate}.sql 2> $err_Log exit $? ) retval=$? else $( $ssh $ssh_options ${ssh_user}@$srcHost "$mysql -u$mysql_user -p$mysql_password -N -s -A -e\"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED WITH mysql_native_password ; UPDATE user SET authentication_string = ''',authentication_string,''' WHERE user = ''',user,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'\"" \ - > ${_backupDestArchiveDir}/MySQLCreateUser-01.sql-${filedate}.sql 2> $err_Log + > ${_backupDestArchiveDir}/MySQLCreateUser-01-${filedate}.sql 2> $err_Log exit $? ) retval=$? @@ -500,14 +500,14 @@ if $ARCHIVE ;then if [ -n "$mysql_credential_args" ] ; then $( $mysql $mysql_credential_args -N -s -A -e"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED WITH mysql_native_password ; UPDATE user SET authentication_string = ''',authentication_string,''' WHERE user = ''',user,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'" \ - > ${_backupDestArchiveDir}/MySQLCreateUser-01.sql-${filedate}.sql 2> $err_Log + > ${_backupDestArchiveDir}/MySQLCreateUser-01-${filedate}.sql 2> $err_Log exit $? ) retval=$? else $( $mysql -u$mysql_user -p$mysql_password -N -s -A -e"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED WITH mysql_native_password ; UPDATE user SET authentication_string = ''',authentication_string,''' WHERE user = ''',user,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'" \ - > ${_backupDestArchiveDir}/MySQLCreateUser-01.sql-${filedate}.sql 2> $err_Log + > ${_backupDestArchiveDir}/MySQLCreateUser-01-${filedate}.sql 2> $err_Log exit $? ) retval=$? @@ -515,15 +515,15 @@ if $ARCHIVE ;then fi - err_msg="Cannot create User Creation SQL file (01)" + err_msg="Cannot create User Creation SQL file MySQL (01)" keep_backup_on_error=false if [ "$retval" = 0 ];then [ -z $mysql_gzip ] && mysql_gzip=false if $mysql_gzip ; then - $gzip ${_backupDestArchiveDir}/MySQLCreateUser-01.sql-${filedate}.sql 2> $err_Log + $gzip ${_backupDestArchiveDir}/MySQLCreateUser-01-${filedate}.sql 2> $err_Log retval=$? - err_msg="Cannot gzip \"MySQLCreateUser-01.sql-${filedate}.sql\"" + err_msg="Cannot gzip \"MySQLCreateUser-01-${filedate}.sql\"" keep_backup_on_error=true fi fi @@ -555,7 +555,7 @@ if $ARCHIVE ;then echolog "" echolog "\t[ERROR] ${err_msg} [ $duration ]\n\t`$cat $err_Log`\n" if ! $keep_backup_on_error ; then - rm -f ${_backupDestArchiveDir}/MySQLCreateUser-01.sql-${filedate}.sql + rm -f ${_backupDestArchiveDir}/MySQLCreateUser-01-${filedate}.sql fi else @@ -575,15 +575,13 @@ if $ARCHIVE ;then echolog " [ $duration ]" fi - ## - End: Backup/Create User Craetion sql statements (01) + ## - End: Backup/Create User Craetion sql statements MySQL (01) ## ---------------------------------- - elif [ $MYSQL_VERSION_NUM -ge 050600 ]; then - ## ----------------------------- - ## - User Craetion sql statements for MySQL 5.7.x + ## - Create User Craetion sql statements for MariaDB ## - - info_msg="create User creation SQL file for MySQL 5.7.x" + info_msg="create User creation SQL file for MariaDB" echononl "\t$info_msg" ## - begin timestamp @@ -592,50 +590,50 @@ if $ARCHIVE ;then filedate=`$date +"%Y-%m-%d-%H%M"` - if [ $srcHost != "localhost" ] || $_via_ssh_tunnel ;then - if [ -n "$mysql_credential_args" ] ; then - $( - $ssh $ssh_options ${ssh_user}@$srcHost "$mysql $mysql_credential_args -N -s -A -e\"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED WITH mysql_native_password AS ''',password,'''; ') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'\"" \ - > ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7.sql-${filedate}.sql 2> $err_Log - exit $? - ) - retval=$? + if [ $srcHost != "localhost" ] || $_via_ssh_tunnel ;then + if [ -n "$mysql_credential_args" ] ; then + $( + $ssh $ssh_options ${ssh_user}@$srcHost "$mysql $mysql_credential_args -N -s -A -e\"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED BY PASSWORD ''',authentication_string,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'\"" \ + > ${_backupDestArchiveDir}/MySQLCreateUser-MariaDB-${filedate}.sql 2> $err_Log + exit $? + ) + retval=$? else - $( - $ssh $ssh_options ${ssh_user}@$srcHost "$mysql -u$mysql_user -p$mysql_password -N -s -A -e\"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED WITH mysql_native_password AS ''',password,'''; ') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'\"" \ - > ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7.sql-${filedate}.sql 2> $err_Log - exit $? - ) - retval=$? - fi + $( + $ssh $ssh_options ${ssh_user}@$srcHost "$mysql -u$mysql_user -p$mysql_password -N -s -A -e\"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED BY PASSWORD ''',authentication_string,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'\"" \ + > ${_backupDestArchiveDir}/MySQLCreateUser-MariaDB-${filedate}.sql 2> $err_Log + exit $? + ) + retval=$? + fi else - if [ -n "$mysql_credential_args" ] ; then - $( - $mysql $mysql_credential_args -N -s -A -e"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED WITH mysql_native_password AS ''',password,'''; ') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'" \ - > ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7.sql-${filedate}.sql 2> $err_Log - exit $? - ) - retval=$? + if [ -n "$mysql_credential_args" ] ; then + $( + $mysql $mysql_credential_args -N -s -A -e"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED BY PASSWORD ''',authentication_string,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'" \ + > ${_backupDestArchiveDir}/MySQLCreateUser-MariaDB-${filedate}.sql 2> $err_Log + exit $? + ) + retval=$? else - $( - $mysql -u$mysql_user -p$mysql_password -N -s -A -e"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED WITH mysql_native_password AS ''',password,'''; ') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'" \ - > ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7.sql-${filedate}.sql 2> $err_Log - exit $? - ) - retval=$? - fi - fi - + $( + $mysql -u$mysql_user -p$mysql_password -N -s -A -e"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED BY PASSWORD ''',authentication_string,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'" \ + > ${_backupDestArchiveDir}/MySQLCreateUser-MariaDB-${filedate}.sql 2> $err_Log + exit $? + ) + retval=$? + fi + fi - err_msg="Cannot create User Creation SQL file for MySQL 5.7.x" + + err_msg="Cannot create User Creation SQL file for MariaDB" keep_backup_on_error=false if [ "$retval" = 0 ];then [ -z $mysql_gzip ] && mysql_gzip=false if $mysql_gzip ; then - $gzip ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7.sql-${filedate}.sql 2> $err_Log + $gzip ${_backupDestArchiveDir}/MySQLCreateUser-MariaDB-${filedate}.sql 2> $err_Log retval=$? - err_msg="Cannot gzip \"MySQLCreateUser-for-MySQL-5.7.sql-${filedate}.sql\"" + err_msg="Cannot gzip \"MySQLCreateUser-MariaDB-${filedate}.sql\"" keep_backup_on_error=true fi fi @@ -667,7 +665,119 @@ if $ARCHIVE ;then echolog "" echolog "\t[ERROR] ${err_msg} [ $duration ]\n\t`$cat $err_Log`\n" if ! $keep_backup_on_error ; then - rm -f ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7.sql-${filedate}.sql + rm -f ${_backupDestArchiveDir}/MySQLCreateUser-MariaDB-${filedate}.sql + fi + else + + ## - print durations right-aligned + ## - + [ -z $right_tabstop ] && right_tabstop=65 + _tmp_string="${info_msg}${duration}" + _strlen=${#_tmp_string} + _count_blank=`expr $right_tabstop - $_strlen` + _str_blanks="" + while [ $_count_blank -gt 1 ]; do + _str_blanks="$_str_blanks " + _count_blank=`expr $_count_blank - 1` + done + echononl "$_str_blanks" + + echolog " [ $duration ]" + fi + + ## - End: Create User Craetion sql statementsfor MariaDB + ## ---------------------------------- + + elif [ $MYSQL_VERSION_NUM -ge 050600 ]; then + + ## ----------------------------- + ## - User Craetion sql statements for MySQL 5.7.x + ## - + info_msg="create User creation SQL file for MySQL 5.7.x" + echononl "\t$info_msg" + + ## - begin timestamp + ## - + b_timestamp=`$date +"%s"` + + filedate=`$date +"%Y-%m-%d-%H%M"` + + if [ $srcHost != "localhost" ] || $_via_ssh_tunnel ;then + if [ -n "$mysql_credential_args" ] ; then + $( + $ssh $ssh_options ${ssh_user}@$srcHost "$mysql $mysql_credential_args -N -s -A -e\"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED WITH mysql_native_password AS ''',password,'''; ') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'\"" \ + > ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7-${filedate}.sql 2> $err_Log + exit $? + ) + retval=$? + else + $( + $ssh $ssh_options ${ssh_user}@$srcHost "$mysql -u$mysql_user -p$mysql_password -N -s -A -e\"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED WITH mysql_native_password AS ''',password,'''; ') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'\"" \ + > ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7-${filedate}.sql 2> $err_Log + exit $? + ) + retval=$? + fi + else + if [ -n "$mysql_credential_args" ] ; then + $( + $mysql $mysql_credential_args -N -s -A -e"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED WITH mysql_native_password AS ''',password,'''; ') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'" \ + > ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7-${filedate}.sql 2> $err_Log + exit $? + ) + retval=$? + else + $( + $mysql -u$mysql_user -p$mysql_password -N -s -A -e"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED WITH mysql_native_password AS ''',password,'''; ') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'" \ + > ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7-${filedate}.sql 2> $err_Log + exit $? + ) + retval=$? + fi + fi + + + err_msg="Cannot create User Creation SQL file for MySQL 5.7.x" + keep_backup_on_error=false + + if [ "$retval" = 0 ];then + [ -z $mysql_gzip ] && mysql_gzip=false + if $mysql_gzip ; then + $gzip ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7-${filedate}.sql 2> $err_Log + retval=$? + err_msg="Cannot gzip \"MySQLCreateUser-for-MySQL-5.7-${filedate}.sql\"" + keep_backup_on_error=true + fi + fi + + ## - end timestamp + ## - + e_timestamp=`$date +"%s"` + + ## - determin duration + ## - + _time=`expr $e_timestamp - $b_timestamp` + t_h=`expr $_time / 60 / 60` + t_rest_h=`expr $_time - $t_h \\* 60 \\* 60` + t_m=`expr $t_rest_h / 60` + t_s=`expr $t_rest_h - $t_m \\* 60` + duration="" + if [ $t_h -gt 0 ]; then + duration="$t_h h : $t_m min : $t_s sec" + elif [ $t_m -gt 0 ];then + duration="$t_m min : $t_s sec" + else + duration="$t_s sec" + fi + + ## - look about errors.. + ## - + if [ "$retval" != "0" ]; then + print_error_stdout "${err_msg}:\n $(cat $err_Log)" + echolog "" + echolog "\t[ERROR] ${err_msg} [ $duration ]\n\t`$cat $err_Log`\n" + if ! $keep_backup_on_error ; then + rm -f ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7-${filedate}.sql fi else @@ -695,9 +805,9 @@ if $ARCHIVE ;then elif [[ "$MYSQL_DISTRIBUTION" = "MariaDB" ]] ; then ## ----------------------------- - ## - Create User Craetion sql statements (MariaDB) + ## - Backup/Create User Craetion sql statements MariaDB (00) ## - - info_msg="create User creation SQL file (MariaDB)" + info_msg="create User creation SQL file MariaDB (00)" echononl "\t$info_msg" ## - begin timestamp @@ -709,15 +819,15 @@ if $ARCHIVE ;then if [ $srcHost != "localhost" ] || $_via_ssh_tunnel ;then if [ -n "$mysql_credential_args" ] ; then $( - $ssh $ssh_options ${ssh_user}@$srcHost "$mysql $mysql_credential_args -N -s -A -e\"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost''; SET PASSWORD FOR ''',user,'''@''localhost'' = ''',password,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'\"" \ - > ${_backupDestArchiveDir}/MySQLCreateUser.sql-${filedate}.sql 2> $err_Log + $ssh $ssh_options ${ssh_user}@$srcHost "$mysql $mysql_credential_args -N -s -A -e\"SELECT CONCAT('SHOW CREATE USER ''',user,'''@''',host,''';') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'\" | $mysql $mysql_credential_args -N -s -A | sed 's/\$/;/g'" \ + > ${_backupDestArchiveDir}/MySQLCreateUser-00-${filedate}.sql 2> $err_Log exit $? ) retval=$? else $( - $ssh $ssh_options ${ssh_user}@$srcHost "$mysql -u$mysql_user -p$mysql_password -N -s -A -e\"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost''; SET PASSWORD FOR ''',user,'''@''localhost'' = ''',password,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'\"" \ - > ${_backupDestArchiveDir}/MySQLCreateUser.sql-${filedate}.sql 2> $err_Log + $ssh $ssh_options ${ssh_user}@$srcHost "$mysql -u$mysql_user -p$mysql_password -N -s -A -e\"SELECT CONCAT('SHOW CREATE USER ''',user,'''@''',host,''';') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'\" | $mysql $mysql_credential_args -N -s -A | sed 's/\$/;/g'" \ + > ${_backupDestArchiveDir}/MySQLCreateUser-00-${filedate}.sql 2> $err_Log exit $? ) retval=$? @@ -725,15 +835,15 @@ if $ARCHIVE ;then else if [ -n "$mysql_credential_args" ] ; then $( - $mysql $mysql_credential_args -N -s -A -e"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost''; SET PASSWORD FOR ''',user,'''@''localhost'' = ''',password,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'" \ - > ${_backupDestArchiveDir}/MySQLCreateUser.sql-${filedate}.sql 2> $err_Log + $mysql $mysql_credential_args -N -s -A -e"SELECT CONCAT('SHOW CREATE USER ''',user,'''@''',host,''';') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'" | $mysql $mysql_credential_args -N -s -A | sed 's/\$/;/g' \ + > ${_backupDestArchiveDir}/MySQLCreateUser-00-${filedate}.sql 2> $err_Log exit $? ) retval=$? else $( - $mysql -u$mysql_user -p$mysql_password -N -s -A -e"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost''; SET PASSWORD FOR ''',user,'''@''localhost'' = ''',password,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'" \ - > ${_backupDestArchiveDir}/MySQLCreateUser.sql-${filedate}.sql 2> $err_Log + $mysql -u$mysql_user -p$mysql_password -N -s -A -e"SELECT CONCAT('SHOW CREATE USER ''',user,'''@''',host,''';') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'" | $mysql $mysql_credential_args -N -s -A | sed 's/\$/;/g' \ + > ${_backupDestArchiveDir}/MySQLCreateUser-00-${filedate}.sql 2> $err_Log exit $? ) retval=$? @@ -741,15 +851,15 @@ if $ARCHIVE ;then fi - err_msg="Cannot create User Creation SQL file (MariaDB)" + err_msg="Cannot create User Creation SQL file MariaDB (00)" keep_backup_on_error=false if [ "$retval" = 0 ];then [ -z $mysql_gzip ] && mysql_gzip=false if $mysql_gzip ; then - $gzip ${_backupDestArchiveDir}/MySQLCreateUser.sql-${filedate}.sql 2> $err_Log + $gzip ${_backupDestArchiveDir}/MySQLCreateUser-00-${filedate}.sql 2> $err_Log retval=$? - err_msg="Cannot gzip \"MySQLCreateUser.sql-${filedate}.sql\"" + err_msg="Cannot gzip \"MySQLCreateUser-00-${filedate}.sql\"" keep_backup_on_error=true fi fi @@ -781,7 +891,7 @@ if $ARCHIVE ;then echolog "" echolog "\t[ERROR] ${err_msg} [ $duration ]\n\t`$cat $err_Log`\n" if ! $keep_backup_on_error ; then - rm -f ${_backupDestArchiveDir}/MySQLCreateUser.sql-${filedate}.sql + rm -f ${_backupDestArchiveDir}/MySQLCreateUser-00-${filedate}.sql fi else @@ -801,13 +911,13 @@ if $ARCHIVE ;then echolog " [ $duration ]" fi - ## - End: Create User Craetion sql statements (MariaDB) + ## - End: Backup/Create User Craetion sql statements (MariaDB) ## ---------------------------------- ## ----------------------------- - ## - Create User Craetion sql statements for MySQL 5.7.x (from MariaDB) + ## - Create User Craetion sql statements (MariaDB 01) ## - - info_msg="create User creation SQL file for MySQL 5.7.x (from MariaDB)" + info_msg="create User creation SQL file MariaDB (01)" echononl "\t$info_msg" ## - begin timestamp @@ -819,15 +929,15 @@ if $ARCHIVE ;then if [ $srcHost != "localhost" ] || $_via_ssh_tunnel ;then if [ -n "$mysql_credential_args" ] ; then $( - $ssh $ssh_options ${ssh_user}@$srcHost "$mysql $mysql_credential_args -N -s -A -e\"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED WITH mysql_native_password ; UPDATE user SET authentication_string = ''',password,''' WHERE user = ''',user,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'\"" \ - > ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7..sql-${filedate}.sql 2> $err_Log + $ssh $ssh_options ${ssh_user}@$srcHost "$mysql $mysql_credential_args -N -s -A -e\"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost''; SET PASSWORD FOR ''',user,'''@''localhost'' = ''',password,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'\"" \ + > ${_backupDestArchiveDir}/MySQLCreateUser-01-${filedate}.sql 2> $err_Log exit $? ) retval=$? else $( - $ssh $ssh_options ${ssh_user}@$srcHost "$mysql -u$mysql_user -p$mysql_password -N -s -A -e\"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED WITH mysql_native_password ; UPDATE user SET authentication_string = ''',password,''' WHERE user = ''',user,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'\"" \ - > ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7..sql-${filedate}.sql 2> $err_Log + $ssh $ssh_options ${ssh_user}@$srcHost "$mysql -u$mysql_user -p$mysql_password -N -s -A -e\"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost''; SET PASSWORD FOR ''',user,'''@''localhost'' = ''',password,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'\"" \ + > ${_backupDestArchiveDir}/MySQLCreateUser-01-${filedate}.sql 2> $err_Log exit $? ) retval=$? @@ -835,15 +945,15 @@ if $ARCHIVE ;then else if [ -n "$mysql_credential_args" ] ; then $( - $mysql $mysql_credential_args -N -s -A -e"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED WITH mysql_native_password ; UPDATE user SET authentication_string = ''',password,''' WHERE user = ''',user,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'" \ - > ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7..sql-${filedate}.sql 2> $err_Log + $mysql $mysql_credential_args -N -s -A -e"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost''; SET PASSWORD FOR ''',user,'''@''localhost'' = ''',password,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'" \ + > ${_backupDestArchiveDir}/MySQLCreateUser-01-${filedate}.sql 2> $err_Log exit $? ) retval=$? else $( - $mysql -u$mysql_user -p$mysql_password -N -s -A -e"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED WITH mysql_native_password ; UPDATE user SET authentication_string = ''',password,''' WHERE user = ''',user,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'" \ - > ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7..sql-${filedate}.sql 2> $err_Log + $mysql -u$mysql_user -p$mysql_password -N -s -A -e"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost''; SET PASSWORD FOR ''',user,'''@''localhost'' = ''',password,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'" \ + > ${_backupDestArchiveDir}/MySQLCreateUser-01-${filedate}.sql 2> $err_Log exit $? ) retval=$? @@ -851,15 +961,15 @@ if $ARCHIVE ;then fi - err_msg="Cannot create User Creation SQL file for MySQL-5.7.x (MariaDB)" + err_msg="Cannot create User Creation SQL file MariaDB 01" keep_backup_on_error=false if [ "$retval" = 0 ];then [ -z $mysql_gzip ] && mysql_gzip=false if $mysql_gzip ; then - $gzip ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7.sql-${filedate}.sql 2> $err_Log + $gzip ${_backupDestArchiveDir}/MySQLCreateUser-01-${filedate}.sql 2> $err_Log retval=$? - err_msg="Cannot gzip \"MySQLCreateUser-for-MySQL-5.7.sql-${filedate}.sql\"" + err_msg="Cannot gzip \"MySQLCreateUser-01-${filedate}.sql\"" keep_backup_on_error=true fi fi @@ -891,7 +1001,117 @@ if $ARCHIVE ;then echolog "" echolog "\t[ERROR] ${err_msg} [ $duration ]\n\t`$cat $err_Log`\n" if ! $keep_backup_on_error ; then - rm -f ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7.sql-${filedate}.sql + rm -f ${_backupDestArchiveDir}/MySQLCreateUser-01-${filedate}.sql + fi + else + + ## - print durations right-aligned + ## - + [ -z $right_tabstop ] && right_tabstop=65 + _tmp_string="${info_msg}${duration}" + _strlen=${#_tmp_string} + _count_blank=`expr $right_tabstop - $_strlen` + _str_blanks="" + while [ $_count_blank -gt 1 ]; do + _str_blanks="$_str_blanks " + _count_blank=`expr $_count_blank - 1` + done + echononl "$_str_blanks" + + echolog " [ $duration ]" + fi + + ## - End: Create User Craetion sql statements MariaDB (01) + ## ---------------------------------- + + ## ----------------------------- + ## - Create User Craetion sql statements for MySQL 5.7.x (from MariaDB) + ## - + info_msg="create User creation SQL file for MySQL 5.7.x (from MariaDB)" + echononl "\t$info_msg" + + ## - begin timestamp + ## - + b_timestamp=`$date +"%s"` + + filedate=`$date +"%Y-%m-%d-%H%M"` + + if [ $srcHost != "localhost" ] || $_via_ssh_tunnel ;then + if [ -n "$mysql_credential_args" ] ; then + $( + $ssh $ssh_options ${ssh_user}@$srcHost "$mysql $mysql_credential_args -N -s -A -e\"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED WITH mysql_native_password ; UPDATE user SET authentication_string = ''',password,''' WHERE user = ''',user,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'\"" \ + > ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7.-${filedate}.sql 2> $err_Log + exit $? + ) + retval=$? + else + $( + $ssh $ssh_options ${ssh_user}@$srcHost "$mysql -u$mysql_user -p$mysql_password -N -s -A -e\"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED WITH mysql_native_password ; UPDATE user SET authentication_string = ''',password,''' WHERE user = ''',user,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'\"" \ + > ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7.-${filedate}.sql 2> $err_Log + exit $? + ) + retval=$? + fi + else + if [ -n "$mysql_credential_args" ] ; then + $( + $mysql $mysql_credential_args -N -s -A -e"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED WITH mysql_native_password ; UPDATE user SET authentication_string = ''',password,''' WHERE user = ''',user,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'" \ + > ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7.-${filedate}.sql 2> $err_Log + exit $? + ) + retval=$? + else + $( + $mysql -u$mysql_user -p$mysql_password -N -s -A -e"SELECT DISTINCT CONCAT('CREATE USER IF NOT EXISTS ''',user,'''@''localhost'' IDENTIFIED WITH mysql_native_password ; UPDATE user SET authentication_string = ''',password,''' WHERE user = ''',user,'''; FLUSH PRIVILEGES;') FROM mysql.user WHERE user<>'' AND user <> 'root' AND user <> 'sys-maint' AND user <> 'debian-sys-maint' AND user <> 'backup' AND user <> 'mysql.sys' AND user <> 'mysql.session' AND user <> 'mysql' AND user <> 'mariadb.sys'" \ + > ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7.-${filedate}.sql 2> $err_Log + exit $? + ) + retval=$? + fi + fi + + + err_msg="Cannot create User Creation SQL file for MySQL-5.7.x (MariaDB)" + keep_backup_on_error=false + + if [ "$retval" = 0 ];then + [ -z $mysql_gzip ] && mysql_gzip=false + if $mysql_gzip ; then + $gzip ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7-${filedate}.sql 2> $err_Log + retval=$? + err_msg="Cannot gzip \"MySQLCreateUser-for-MySQL-5.7-${filedate}.sql\"" + keep_backup_on_error=true + fi + fi + + ## - end timestamp + ## - + e_timestamp=`$date +"%s"` + + ## - determin duration + ## - + _time=`expr $e_timestamp - $b_timestamp` + t_h=`expr $_time / 60 / 60` + t_rest_h=`expr $_time - $t_h \\* 60 \\* 60` + t_m=`expr $t_rest_h / 60` + t_s=`expr $t_rest_h - $t_m \\* 60` + duration="" + if [ $t_h -gt 0 ]; then + duration="$t_h h : $t_m min : $t_s sec" + elif [ $t_m -gt 0 ];then + duration="$t_m min : $t_s sec" + else + duration="$t_s sec" + fi + + ## - look about errors.. + ## - + if [ "$retval" != "0" ]; then + print_error_stdout "${err_msg}:\n $(cat $err_Log)" + echolog "" + echolog "\t[ERROR] ${err_msg} [ $duration ]\n\t`$cat $err_Log`\n" + if ! $keep_backup_on_error ; then + rm -f ${_backupDestArchiveDir}/MySQLCreateUser-for-MySQL-5.7-${filedate}.sql fi else @@ -955,7 +1175,7 @@ if $ARCHIVE ;then if $mysql_gzip ; then $gzip ${_backupDestArchiveDir}/MySQL_Create_Databases-${filedate}.sql 2> $err_Log retval=$? - err_msg="Cannot gzip \"MySQLGrants.sql-${filedate}.sql\"" + err_msg="Cannot gzip \"MySQLGrants-${filedate}.sql\"" keep_backup_on_error=true fi fi