Mysql
 sql >> Database >  >> RDS >> Mysql

Come eseguire il backup dei database MySQL utilizzando i lavori cron

Questo articolo descrive come impostare un processo cron che esegue automaticamente il backup di un database MySQL in un file a intervalli specifici.

Backup automatizzati del database utilizzando i lavori cron

Esistono due modi per eseguire processi cron che eseguono il backup di un database MySQL. Puoi includere le informazioni di accesso a MySQL nel comando cron job stesso, oppure puoi utilizzare un file di configurazione per memorizzare le informazioni di accesso a MySQL.

Metodo n. 1:includi le informazioni di accesso a MySQL nel comando cron job

Puoi eseguire backup programmati di un database MySQL creando un processo cron che esegue il comando seguente:

/usr/bin/mysqldump --routines -u dbusername -p'dbpassword' dbname > ${HOME}/path/backup.sql

Sostituire dbusername con l'utente del database, dbpassword con la password dell'utente del database, dbname con il database di cui eseguire il backup e percorso con il percorso in cui si desidera archiviare il file di backup. Questo esempio utilizza backup.sql per il nome file del backup, ma puoi utilizzare qualsiasi nome file desideri.

  • Le virgolette singole (') intorno alla password assicurano che tutti i caratteri speciali vengano elaborati correttamente.
  • Quando il comando viene eseguito correttamente, non viene generato alcun output. Tuttavia, se si verifica un errore o una configurazione errata, a seconda della configurazione dell'account è possibile che venga visualizzato un messaggio di posta elettronica contenente l'output del comando. Per eliminare i messaggi di posta elettronica quando il comando non riesce, aggiungi il testo seguente alla fine del comando cron job:
    2>/dev/null

    La maggior parte delle persone, tuttavia, desidera essere avvisata quando un processo cron fallisce.

Per informazioni su come utilizzare cPanel per creare un cron job, consulta questo articolo.

Metodo n. 2:utilizzare un file di configurazione per memorizzare le informazioni di accesso a MySQL

In alternativa, puoi creare un file di configurazione nella tua home directory che memorizza le informazioni di accesso a MySQL. Usando questo metodo, non è necessario includere le informazioni di accesso nei comandi di cron job. Per fare ciò, segui questi passaggi:

  1. Crea un file denominato .my.cnf nella tua /home/ username, sostituendo username con il nome utente del tuo account. Assicurati di includere il iniziale. nel nome del file.
  2. Copia e incolla il seguente testo in .my.cnf file. Sostituire dbusername con l'utente del database e sostituire dbpassword con la password dell'utente del database:
    [client]
    user = dbusername
    password = "dbpassword"
    host = localhost
  3. Crea un lavoro cron che esegua il comando seguente. Sostituire dbname con il nome del database di cui eseguire il backup e sostituire path con il percorso in cui archiviare il file di backup. Questo esempio utilizza backup.sql per il nome file del backup, ma puoi usare qualsiasi nome file che desideri:

    mysqldump --routines dbname > /path/backup.sql

    Quando il comando viene eseguito correttamente, non viene generato alcun output. Tuttavia, se si verifica un errore o una configurazione errata, a seconda della configurazione dell'account è possibile che venga visualizzato un messaggio di posta elettronica contenente l'output del comando. Per eliminare i messaggi di posta elettronica quando il comando non riesce, aggiungere il testo seguente alla fine del comando cron job:

    2>/dev/null

    La maggior parte delle persone, tuttavia, desidera essere avvisata quando un processo cron fallisce.

    Per informazioni su come utilizzare cPanel per creare un cron job, consulta questo articolo.

Maggiori informazioni

Per ulteriori informazioni su mysqldump programma, visitare http://dev.mysql.com/doc/refman/5.1/en/mysqldump.html.