MySQL - Sauvegarder et restaurer une base de données ou une table

MySQL - Sauvegarder et restaurer une base de données ou une table

mysql logo

Dans ce tutoriel, nous allons vous montrer comment utiliser la sauvegarde et la restauration d'une base de données ou de tables MySQL.

1. MySQL - Exemples de sauvegarde

1.1 Quick reference – mysqldump

#Backup a database
$ mysqldump -u [username] -p [dbname] > filename.sql

#Backup a table
$ mysqldump -u [username] -p [dbname] [table] > filename.sql

#Backup multiple tables
$ mysqldump -u [username] -p [dbname] [table1] [table2] > filename.sql

#Backup a database and gzip it
$ mysqldump -u [username] -p [dbname] | gzip > filename.sql.gz

1.2 Backup a database ‘wrdp1’ to a SQL file ‘db.20160726.sql’

$ mysqldump -u example -p wrdp1 > db.20160726.sql
Enter password:

1.3 Backup and gzip together.

$ mysqldump -u example -p wrdp1 | gzip > db.20160726.sql.gz
Enter password:

1.4 Back a table ‘wp_postmeta’ to a SQL file ‘wp_postmeta.sql’

$ mysqldump -u example -p wrdp1 wp_postmeta > wp_postmeta.sql
Enter password:

# backup + gzip
$ mysqldump -u example -p wrdp1 wp_postmeta | gzip > wp_postmeta.sql

#multiple tables - wp_postmeta and wp_posts
$ mysqldump -u example -p wrdp1 wp_postmeta wp_posts > tables.sql

2. MySQL - Exemples de restauration

2.1 Quick reference – mysql

#Restore, uses 'mysql' command for backup database and table
$ mysql -u [username] -p [dbname] < filename.sql

#Restore back a gzip SQL file.
$ gunzip -c filename.sql.gz | mysql -u [username] -p [dbname]

Note
Si vous restaurez un fichier SQL, veuillez utiliser la commandemysql NOTmysqldump

2.2 Restore back a SQL file 'db.20160726.sql' to a database 'wrdp1'.

$ mysql -u example -p wrdp1 < db.20160726.sql
Enter password:

#table, same command
$ mysql -u example -p wrdp1 < wp_postmeta.sql

2.3 Restore back a gzip SQL file 'db.20160726.sql.gz' to a database 'wrdp1'.

$ gunzip -c db.20160726.sql.gz | mysql -u example -p wrdp1
Enter password:

3. Étude de cas

Voici mes étapes de sauvegarde et de restauration MySQL, juste pour référence.

  1. SSH dans un serveur 'myserver1'

  2. Sauvegarder et gzip une base de données 'db1'

  3. Téléchargez le fichier de sauvegarde depuis 'myserver1' viaSCP command

  4. Restaurez le fichier de sauvegarde dans une base de données locale 'local_db1'

# local environment
$ ssh myserver1

# server environment
$ mysqldump -u example -p db1 | gzip > db1.20160726.sql.gz

# server environment
$ exit

# local environment
$ scp example@myserver1:db1.20160726.sql.gz .

# local environment
$ $ gunzip -c db1.20160726.sql.gz | mysql -u example -p local_db1

Terminé.

Note
Veuillez utiliser cette commande ultime pour plus d'exemples -mysqldump --help