From 9354d90156d7ca969a2c6a643b83cec23335dfac Mon Sep 17 00:00:00 2001 From: josegonzalez Date: Sun, 5 Mar 2023 04:46:02 -0500 Subject: [PATCH] refactor: use root credentials to create database dump This fixes an issue introduced in mysql 8.0.32 where we now need RELOAD and PROCESS to make a dump. Since we already import via root, exporting via root should be fine as well. --- functions | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/functions b/functions index 6fb8567..fd96c97 100755 --- a/functions +++ b/functions @@ -113,12 +113,10 @@ service_export() { local SERVICE_ROOT="$PLUGIN_DATA_ROOT/$SERVICE" local SERVICE_NAME="$(get_service_name "$SERVICE")" local DATABASE_NAME="$(get_database_name "$SERVICE")" - local PASSWORD="$(service_password "$SERVICE")" + local ROOTPASSWORD="$(service_root_password "$SERVICE")" [[ -n $SSH_TTY ]] && stty -opost - "$DOCKER_BIN" container exec "$SERVICE_NAME" bash -c "printf '[client]\ndefault-character-set=utf8mb4\npassword=$PASSWORD\n' > /root/credentials.cnf" - "$DOCKER_BIN" container exec "$SERVICE_NAME" mysqldump --defaults-extra-file=/root/credentials.cnf --user=mysql --single-transaction --no-tablespaces --quick "$DATABASE_NAME" - "$DOCKER_BIN" container exec "$SERVICE_NAME" rm /root/credentials.cnf + "$DOCKER_BIN" container exec "$SERVICE_NAME" mysqldump --default-character-set=utf8mb4 --user=root --password="$ROOTPASSWORD" --single-transaction --no-tablespaces --quick "$DATABASE_NAME" status=$? [[ -n $SSH_TTY ]] && stty opost exit $status