MySQL database backup using Cron Job

AUTOMATED DATABASE BACKUPS USING CRON JOBS

There are two ways to run cron jobs that back up a MySQL database. You can either include MySQL login information in the cron job command itself, or you can use a configuration file to store the MySQL login information.

Method #1: Include MySQL login information in the cron job command

You can run scheduled backups of a MySQL database by creating a cron job that runs the following command:

/usr/bin/mysqldump -u dbusername -p'dbpassword' dbname > /path/backup.sql

Replace dbusername with the database user, dbpassword with the database user's password, dbname with the database to back up, and path with the path where you want to store the backup file. This example uses backup.sql for the backup's filename, but you can use any filename you want.

The single quote (') characters around the password ensure that any special characters are processed correctly.
Method #2: Use a configuration file to store MySQL login information

Alternatively, you can create a configuration file in your home directory that stores MySQL login information. Using this method, you do not have to include login information in your cron job commands. To do this, follow these steps:

  1. Create a file named .my.cnf in your /home/username directory, replacing usernamewith your account username.
    Make sure you include the leading . in the filename.
  2. Copy and paste the following text into the .my.cnf file. Replace dbusername with the database user and replace dbpassword with the database user's password:
    [client]
    user = dbusername
    password = "dbpassword"
    host = localhost
  3. Create a cron job that runs the following command. Replace dbname with the name of the database to back up, and replace path with the path to store the backup file. This example uses backup.sql for the backup's filename, but you can use any filename you want:

    mysqldump dbname > /path/backup.sql

     

MORE INFORMATION

For more information about the mysqldump program, please visit http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html.

 

Was this answer helpful?

 Print this Article

Also Read

Import and export MySQL Database

How to import and export a MySQL database This article describes how to import and export a...

Connecting to PostgreSQL using PHP

CONNECT TO POSTGRESQL USING NATIVE FUNCTIONS PHP provides many functions for working directly...

Powered by WHMCompleteSolution