MySQL è uno dei sistemi di database più utilizzati, dotato di tonnellate di efficaci utilità da riga di comando. Ad esempio, eseguire il backup del database MySQL e ripristinarlo è semplice utilizzando il comando mysqldump. Oggi vedremo dieci esempi di comandi mysqldump efficaci come riferimento.
1. Fare il backup del tuo database MySQL
Mysqldump ti consente di inserire la password quando richiesto o di fornirla insieme al comando. Di seguito è riportato il comando di esempio per entrambi i metodi.
$mysqldump -u root -p[root_password] [database_name] > save_mydb.sql or $mysqldump -u root --password=[root_password] [database_name] > save_mydb.sql
2. Backup di un singolo database
L'esempio seguente consentirà di eseguire il backup di un singolo database. Assumiamo che il nome del database sia "RequestTracker".
$mysqldump -u root --password=mydbpassword RequestTracker > RT_dump.sql
3. Eseguire il backup di più database contemporaneamente
Se desideri eseguire il backup di più database contemporaneamente, identifica i database e passali al comando mysqldump come mostrato di seguito. Nel nostro esempio, i database sono RequestTracker, RequestTracker_2, RequestTracker_3.
$mysqldump -u root –-password=mydbpassword RequestTracker RequestTracker_2 RequestTracker_3 > db_dump.sql
4. Eseguire il backup di tutti i database contemporaneamente
È interessante notare che puoi eseguire il backup di tutti i database in un unico comando.
$mysqldump -u root --password=mydbpassword --all-databases > all_database.sql
5. Eseguire il backup solo di una tabella specifica di un database
Non vuoi eseguire il backup dell'intero database e vuoi solo una tabella specifica? diciamo user_table dal database RequestTracker. Ecco il comando,
$mysqldump -u root --password=mydbpassword RequestTracker user_table > user_table_rt.sql
6. Ripristina database
Accedi a MySQL
$mysql -u root -p
Crea database
mysql> create database RequestTracker; Query OK, 1 row affected (0.02 sec)
Ripristina il database,
source RequestTracker.sql;
Nota:mysql cercherà RequestTracker.sql file all'interno della directory corrente. In caso contrario, dovrai menzionare il percorso assoluto del file.
source /tmp/RequestTracker.sql;
7. Un altro modo per ripristinare il database
mysql -u root --password=mydbpassword RequestTracker < /tmp/rt_dump.sql
8. Backup e ripristino del database su un server remoto contemporaneamente
Se desideri eseguire il backup del database su un server e inviarlo per il ripristino su un server remoto, esegui il comando seguente. L'esempio seguente eseguirà il backup del database denominato "RequestTracker" sul server corrente e lo ripristinerà su un server remoto come "RequestTracker1".
mysqldump -u root --password=mydbpassword RequestTracker | mysql -u root --password=myremotepass --host=remote_hostname -C RequestTracker1
Ricorda:il comando precedente presuppone che il database "RequestTracker1" esista già sul server remoto.
9. Usa Cron per eseguire backup regolari
Scriviamo un semplice script di shell per eseguire regolarmente il backup. Copia il codice seguente e incollalo in un file chiamato "backup.sh “.
#!/bin/sh today_date=$(date +"%Y%m%d") mysqldump -u root --password=mydbpassword RequestTracker > /backup/RT_dump_$today_date.sql
Ricordarsi di modificare di conseguenza nome utente, password e database.
Crea cron come di seguito,
0 0 * * * /bin/sh /backup/backup.sh
Il cron sopra verrà eseguito ogni giorno alle 12 di mezzanotte.
10. Altre opzioni di mysqldump
Ottieni più opzioni di mysqldump usando il comando seguente,
$mysqldump --help