Vous pouvez accomplir cela en utilisant la fonction de ligne de commande mysqldump .
Par exemple:
S'il s'agit d'une base de données entière, alors:
$ mysqldump -u [uname] -p db_name > db_backup.sql
Si ce sont toutes des bases de données, alors:
$ mysqldump -u [uname] -p --all-databases > all_db_backup.sql
S'il s'agit de tables spécifiques dans une base de données, alors:
$ mysqldump -u [uname] -p db_name table1 table2 > table_backup.sql
Vous pouvez même aller jusqu'à la compression automatique de la sortie à l'aide de gzip (si votre base de données est très grande):
$ mysqldump -u [uname] -p db_name | gzip > db_backup.sql.gz
Si vous voulez le faire à distance et que vous avez accès au serveur en question, alors ce qui suit fonctionnerait (en supposant que le serveur MySQL est sur le port 3306):
$ mysqldump -P 3306 -h [ip_address] -u [uname] -p db_name > db_backup.sql
Il doit déposer le .sql
fichier dans le dossier à partir duquel vous exécutez la ligne de commande.
EDIT: mis à jour pour éviter l'inclusion de mots de passe dans les commandes CLI, utilisez l' -p
option sans le mot de passe. Il vous le demandera et ne l'enregistrera pas.