Skip to content

Instantly share code, notes, and snippets.

@omeroot
Last active June 24, 2024 06:51
Show Gist options
  • Save omeroot/7ecffa83140278456216eb9b3b2be54a to your computer and use it in GitHub Desktop.
Save omeroot/7ecffa83140278456216eb9b3b2be54a to your computer and use it in GitHub Desktop.
#!/bin/sh
cd /root/backups || exit
SQL_ARCHIVED_FILE=<archived_filename>_$(date +%Y%m%d).tar.gz
SQL_DUMP_FILE=<dump_filename>
S3_BUCKET_URL="s3://<bucket_name>"
echo "DB Dumping to $SQL_DUMP_FILE ..."
mysqldump --defaults-extra-file=.sqlpwd --databases <db_name> --triggers --events --routines --result-file="$SQL_DUMP_FILE"
FILESIZE=$(( $( stat -c %s "$SQL_DUMP_FILE" ) / 1024 / 1024 ))
echo "Backup file size: $FILESIZE MB"
echo "Archiving to $SQL_ARCHIVED_FILE ..."
tar -czvf "$SQL_ARCHIVED_FILE" SQL_DUMP_FILE
FILESIZE=$(( $( stat -c %s "$SQL_ARCHIVED_FILE" ) / 1024 / 1024 ))
echo "Compressed size: $FILESIZE MB"
echo "Syncing to $S3_BUCKET_URL ..."
aws s3 cp "$SQL_ARCHIVED_FILE" "$S3_BUCKET_URL" --profile <aws_cli_profilename>
echo "Clearing: $SQL_DUMP_FILE ..."
rm "$SQL_DUMP_FILE"
echo "Clearing: $SQL_ARCHIVED_FILE ..."
rm "$SQL_ARCHIVED_FILE"
exit
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment