tgs / scripts /mysql /restore
AZILS's picture
Upload 119 files
054900e verified
#!/bin/sh -e
# The directory where backups are stored
BACKUP_DIRECTORY="/backups"
# Check if a file name was provided as a parameter
if [ $# -eq 0 ]; then
echo "No file name provided. Please provide a file name to check."
exit 1
fi
# The file name is taken from the first argument provided to the script
file_name="$1"
# Full path to the file
full_file_path="${BACKUP_DIRECTORY}/${file_name}"
# Check if the file exists
if [ -f "$full_file_path" ]; then
echo "File ${file_name} exists."
else
echo "File ${file_name} does not exist."
exit 1
fi
export MYSQL_USER="${MYSQL_USER}"
export MYSQL_PASSWORD="${MYSQL_PASSWORD}"
export MYSQL_DATABASE="${MYSQL_DATABASE}"
echo "Dropping the database..."
mysql -u "$MYSQL_USER" -p"$MYSQL_PASSWORD" -e "DROP DATABASE IF EXISTS \`$MYSQL_DATABASE\`"
echo "Creating a new database..."
mysql -u "$MYSQL_USER" -p"$MYSQL_PASSWORD" -e "CREATE DATABASE \`$MYSQL_DATABASE\`"
echo "Applying the backup to the new database..."
gunzip -c "${full_file_path}" | mysql -u "$MYSQL_USER" -p"$MYSQL_PASSWORD" "$MYSQL_DATABASE"
echo "Backup applied successfully."