MySQL: Come eseguire il backup (Dump) e ripristinare il database Utilizzando mysqldump
Questo articolo mostra il modo corretto per scaricare e ripristinare il database MySQL dalla riga di comando in Linux utilizzando mysqldump e mysql comandi.
Se si utilizzano database MySQL o MariaDB, è molto importante capire come eseguire il backup e il ripristino dei dati. Inoltre, è necessario mantenere backup regolari del database e questo vi aiuterà a ripristinare i dati se l’applicazione si blocca o i dati sono danneggiati da un errore di sistema.
MySQL e MariaDB includono strumenti da riga di comando che è possibile utilizzare per scaricare e ripristinare rapidamente e facilmente i database. Lo strumento mysqldump
viene utilizzato per esportare il contenuto di un database in un file di testo, mentre il client mysql
può essere utilizzato per importare dati da un file di testo in un database MySQL/MariaDB.
Come utilizzare il comando MySQL Dump
L’utilità della riga di comando mysqldump
esporta i database in file di testo SQL. In altre parole, è usato per prendere il dump del database MySQL.
La sintassi per il comando mysqldump
è riportata di seguito:
mysqldump -u -p > .sql
Dove:
- username è il tuo nome utente MySQL/MariaDB.
- -p richiesta di password per questo utente.
- database_name è il nome del database che si desidera eseguire il backup.
- nome file.sql è il percorso completo del file di dump sql che conterrà il backup.
Le procedure, le funzioni, le viste e gli eventi del database vengono scaricati al momento del backup.
mysqldump: eseguire il backup di un singolo database MySQL
In questo esempio, il database è denominato my_wordpress
. Sostituire questo con il nome del database che si desidera esportare. In base alla sintassi, il file di backup verrà creato nella posizione corrente.
mysqldump -u root -p my_wordpress > my_wordpress_backup.sql
Dopo aver eseguito il comando, inserisci la tua password di root MySQL.
Questo crea un file di dump MySQL denominato my_wordpress_backup.sql
che contiene tutte le istruzioni SQL per creare tabelle e ripristinare i dati in un database esistente. Se si verificano errori durante il processo di esportazione, mysqldump
li stamperà sullo schermo.
Il comando non produrrà alcun output visivo, ma puoi ispezionare il contenuto di my_wordpress_backup.sql
usando il comando head per verificare se si tratta di un file di dump MySQL legittimo.
head -n 5 my_wordpress_backup.sql
-- MariaDB dump 10.19 Distrib 10.5.9-MariaDB, for Linux (x86_64)-- Host: localhost Database: my_wordpress -- Server version 10.3.27-MariaDB-0+deb10u1
mysqldump: Backup di più database MySQL
Per eseguire il backup di più database MySQL con un comando è necessario utilizzare l’opzione --databases
seguita dall’elenco dei database che si desidera eseguire il backup. Inoltre, puoi inserire il file dei risultati in una posizione a tua scelta.
Eseguire il seguente comando per creare un file di dump MySQL my_backup.sql
nella directory /home/backups
di due database denominati my_wordpress
e ftpusers
.
mysqldump -u root -p --databases my_wordpress ftpusers > /home/backups/my_backup.sql
mysqldump: eseguire il backup di tutti i database MySQL
Utilizzare l’opzione --all-databases
per eseguire il backup di tutti i database MySQL:
mysqldump -u root -p --all-databases > all_db_backup.sql
Come creare un backup compresso del database MySQL
Se la dimensione del database è molto grande è una buona idea comprimere l’output. Per farlo semplicemente pipe l’output al comando gzip
e reindirizzalo a un file come mostrato di seguito:
mysqldump -u root -p my_wordpress | gzip > my_wordpress_backup.sql.gz
mysql: Ripristina MySQL da un file di dump MySQL
Per ripristinare un backup creato con mysqldump
, è necessario utilizzare il comando mysql
.
mysql -u -p < .sql
Dove
- username è il tuo nome utente MySQL/MariaDB.
- -p richiesta di password per questo utente.
- database_name è il nome del database in cui si desidera ripristinare.
- nome file.sql è il percorso completo del file di dump sql che contiene il backup.
mysql: Ripristina singolo database MySQL
È possibile ripristinare tutte le tabelle dal file di dump MySQL di qualsiasi particolare database.
Il ripristino viene eseguito semplicemente con il comando sottostante, in cui viene nuovamente specificato un utente e viene richiesta una password e viene passato il file my_wordpress_backup.sql
nel database my_wordpress
.
mysql -u root -p my_wordpress < my_wordpress_backup.sql
Ti verrà richiesta la password del tuo utente MySQL.
Una volta completato il database dovrebbe essere disponibile nell’istanza in esecuzione di MySQL. Anche il file di dump MySQL da cui è stato importato continuerà ad esistere, quindi è possibile memorizzarlo in modo sicuro a questo punto o eliminarlo se non è più necessario.
mysql: Ripristina tutti i database MySQL
È possibile ripristinare tutti i database di qualsiasi server MySQL su un altro server MySQL dal file di dump MySQL.
mysql -u root -p < all_db_backup.sql
Conclusione
Ora è possibile mantenere il backup regolare dei file di database e ripristinare i dati quando richiedono seguendo i passaggi precedenti.
Questo tutorial si applica anche quando si desidera eseguire la migrazione a un nuovo server. È sufficiente eseguire il backup del database sul vecchio server e caricare il file di dump MySQL sul nuovo server. Creare un database di destinazione sul nuovo server, quindi eseguire il file di dump MySQL caricato nel nuovo database. Inoltre, dovresti anche ricreare utenti e autorizzazioni dal vecchio server MySQL a quello nuovo.
Per informazioni più dettagliate, ecco il link alla documentazione ufficiale.
Leave a Reply