SiberFx #site
Linux

Automate MySQL Backups and Restores on Linux

Selim Görmüş Selim Görmüş Jun 25, 2026 2 min read

Introduction to MySQL Backup and Restore

MySQL is a popular open-source relational database management system. As a system administrator or developer, ensuring the integrity and availability of database data is crucial. This article will guide you through implementing automated backup and restore for MySQL databases on Linux using shell scripting and cron jobs.

Prerequisites

  • MySQL installed and running on a Linux system
  • A basic understanding of shell scripting and cron jobs

Creating a Backup Script

To automate the backup process, we will create a shell script that uses the mysqldump command to export the database schema and data.

#!/bin/bash
# Define the database credentials and name
DB_USER="your_username"
DB_PASSWORD="your_password"
DB_NAME="your_database"

# Define the backup file name and location
BACKUP_FILE="/var/backups/${DB_NAME}_$(date +"%Y-%m-%d_%H-%M-%S").sql"

# Dump the database using mysqldump
mysqldump -u ${DB_USER} -p${DB_PASSWORD} ${DB_NAME} > ${BACKUP_FILE}

Scheduling the Backup Script

To schedule the backup script to run automatically, we will use a cron job. Open the crontab editor using the command crontab -e and add the following line:

0 0 * * * /path/to/backup_script.sh

This will run the backup script daily at midnight.

Restoring a MySQL Database from a Backup

To restore a MySQL database from a backup file, you can use the mysql command.

mysql -u ${DB_USER} -p${DB_PASSWORD} ${DB_NAME} < backup_file.sql

0 Comments

Share your thoughts

Your email address will not be published. Required fields are marked *

To leave a comment, please sign in to your account.

Have a project in mind?