Backing up and Restoring MySQL with mysqldump

| devops | databases |

I backup and restore databases across servers every few months, but each time I have to resort to reading this very verbose documentation. The steps below are a no fuss way to do this each time.

Backup Server

SSH into the server with the database that you wish to backup run the following command.
mysqldump -u root -p $DB_NAME > $DB_NAME.sql

Copy the File to Destination Server

Using scp, we can securely transfer the backup
scp $DB_NAME.sql $USER@$SERVER:

Restore on Destination Server

SSH into the server with the database that you wish to restore. From the the previous step the backup file should now be located in the root directory.
  1. Create new database
    mysql -u root -p -e 'CREATE DATABASE $DB_NAME'
    
  2. Restore your backup
    mysql -u root -p $DB_NAME < $DB_NAME.sql

Thank you for reading! Share your thoughts with me on bluesky, mastodon, or via email.

Check out some more stuff to read down below.

Most popular posts this month

Recent Favorite Blog Posts

This is a collection of the last 8 posts that I bookmarked.

Articles from blogs I follow around the net

Go Read a Book

There's a lot of shitty news happening lately, and I've been having trouble holding space for it all.

via flower.codes January 24, 2026

ROSCon Korea 2026 Review

After attending my first ever ROSCon in Singapore 3 months ago, I had a chance to participate in the first ever regional ROSCon in (South) Korea! Physical AI is here I had an interesting discussion with a team lead at ROBOTIS, a major Robotics company , o…

via Junwoo Hwang January 24, 2026

[RIDGELINE] Eras

Ridgeline subscribers — I like “eras.” That is, named chunks of time. Japanese history tends to periodicize based on locus of power. The Tokugawa Shogunate reigned for hundreds of years, and so: Edo, where the power was, becomes the period (a big sweeping o…

via Craig Mod — Writer + Photographer January 24, 2026

Generated by openring