TinyURL

Enter a long URL to make tiny:

venerdì 20 marzo 2009

Backup e Restore MySQL

Il comando che preferisco per effettuare il backup di un db su MySQL è mysqldump.
mysqldump
Genera un file ASCII contentente istruzioni SQL (CREATE TABLE, CREATE DATABASE ecc.) che permettono di ricreare completamente un database. Questo metodo permette di utilizzare lo script su qualsiasi piattaforma, ottenendo quindi una soluzione portabile. La seconda importante caratteristica è la flessibilità, modificando lo script prodotto, è possibile il ripristino anche di una sola tabella. Infine mysqldump permette di effetture il dump di un database da remoto.
Utilizzo:
#mysqldump mydb > mydb_dump.sql -u root -p
Enter password: mypassword
con questa sintassi utilizzate l'utente root e inserite la password solo quando richiesta, evitando di doverla inserire direttamente nel comando e farla cosi rimanere nella history della shell.
Due opzioni molto utili sono --database e --all-database che rispettivamente vi permettono di fare il dump dei database indicati oppure di fare il dump di tutti i database.
Esempio:
#mysqldump --database mydb mydb1 > mydbs_dump.sql -u root -p
Enter password: mypassword

#mysqldump --all-database > alldb_dump.sql -u root -p
Enter password: mypassword
E' importante notare che utilizzando l'opzione --database o --all-database nello script sql generato vengono incluse anche le istruzioni per creare il database (CREATE DATABASE), mentre negli altri casi, si presuppone che il database sia gia' esistente, di conseguenza viene generato uno script SQL che si occupa solamente di ricreare le tabelle.
Per altre info vi consiglio come sempre di leggere il manuale!!!
Restore
Per quanto riguarda il restore... è molto semplice. Vi basta utilizzare il seguente comando:
#mysql < alldb_dump.sql -u root -p
Enter password: mypassword
Di un backup completo di tutti i DB potete anche decidere di ripristinare solamente una istanza e per fare ciò dovrete utilizzare l'opzione --one-database [nome_db]


Per altre info vi consiglio come sempre di leggere il manuale!!!

Nessun commento:

Posta un commento