Come fare il backup dei database MySQL
Shared FAQ page chrome (breadcrumb, dates, read time, «Continua a leggere», enquiry block, category labels): see INDEX-AND-CHROME.md. Translate once.
Body
Introduzione
Una copia fisica delle directory del backend MySQL per un uso futuro non funziona sempre, e il ripristino è piuttosto difficile, con procedure complicate. Vediamo due metodi per fare correttamente il backup e il ripristino dei vostri database.
#1. mysqldump
MySQL e MariaDB includono un'utilità, mysqldump, che permette di fare il backup dei database ospitati con facilità. Il backup SQL generato da questa utilità è l'insieme completo delle istruzioni SQL che riproducono il database di origine: al ripristino crea gli oggetti del database nella stessa istanza MySQL/MariaDB o in un'altra, a partire da quelle istruzioni. Il backup è portabile e potete aprire il file con qualsiasi editor di testo e modificare le istruzioni SQL se necessario.
Usare mysqldump per tutti i database
Il comando mysqldump può fare il backup di tutti i database presenti sul server MySQL con la sintassi qui sotto. Servono le credenziali dell'utente amministratore di MySQL. Una volta eseguito, chiede la password dell'amministratore e il backup viene scritto nel percorso che indicate per il file di output.
mysqldump -u root -p --all-databases > all-DB-dump-$( date '+%Y-%m-%d_%H-%M-%S' ).sql
Usare mysqldump per un singolo database.
Potete usare le credenziali dell'amministratore oppure l'utente di quel database specifico. Assicuratevi che l'utente del database abbia i permessi GRANT SELECT, SHOW VIEW, RELOAD, REPLICATION CLIENT, EVENT, TRIGGER sul database. Con i comandi qui sotto, da una shell MySQL, create l'utente e gli assegnate i permessi necessari per le operazioni di backup.
CREATE USER 'bkpuser'@'localhost' IDENTIFIED BY '<password>';
GRANT SELECT, SHOW VIEW, RELOAD, REPLICATION CLIENT, EVENT, TRIGGER ON db_name.* TO 'bkpuser'@'localhost';
Sostituite bkpuser con il nome utente che volete usare per l'utente di backup, password con la password reale dell'utente e db_name con il nome del database. Fatto questo, potete usare bkpuser e le sue credenziali per il backup del database db_name con la sintassi qui sotto.
mysqldump -u [username] -p[password] -h [host] [databaseName] > [backup-name].sql
OPPURE
mysqldump -u bkpuser -p<password> db_name > db_name.sql
Usare mysqldump per una singola tabella
Con la sintassi qui sotto fate il backup di una sola tabella del database.
mysqldump -u [username] -p[password] -h [host] [databaseName] [tableName] > [backup-name].sql
OPPURE
mysqldump -u bkpuser -p<password> db_name table_name > table_name.sql
Ripristinare il backup generato.
L'utilità client mysql ripristina (importa) il file .sql in un database. Con il comando qui sotto, dalla shell MySQL, create un database vuoto per il ripristino.
mysql> create database db_name;
Query OK, 1 row affected (0.08 sec)
Usate il client mysql con la sintassi qui sotto per avviare il ripristino dal file di backup .sql.
mysql -u [username] -p [databaseName] < backupFile.sql
L'utilità mysqldump può anche fare il backup di un database da un server remoto; la sintassi è la seguente.
mysqldump --host hostaddress -P portnumber -u username -ppassword dbname > dbname.sql
#2 Usare phpMyAdmin
phpMyAdmin è fornito con cPanel e Plesk e può esportare e importare un database dal browser.
Accedete a phpMyAdmin collegato al vostro database, aprite la scheda «Export», selezionate il formato del file di backup, scegliete SQL dall'elenco a tendina e premete il pulsante «Go». Il backup viene generato e scaricato nella stessa sessione del browser.
Selezionate la scheda «Import», fate clic sul pulsante «Choose File», individuate il file di backup sulla macchina locale e fate clic su «Go» per ripristinare un backup da phpMyAdmin.
Dalle FAQ di EuroVPS.
Altro in «Guide»Il vostro prossimo partner per l'infrastruttura
Avete ancora
una domanda?
Diteci cosa state cercando di fare. Un ingegnere la leggerà e vi risponderà.
+357 222 32280
Partiamo dalla vostra infrastruttura.
Un po' di contesto ci aiuta a iniziare la conversazione giusta.
