Pour exporter
Si c'est une BD entière, alors :
$ mysqldump -u [uname] -p[pass] db_name > db_backup.sql
Si c'est tous les DB, alors :
$ mysqldump -u [uname] -p[pass] --all-databases > all_db_backup.sql
S'il s'agit de tables spécifiques dans une BD, alors.. :
$ mysqldump -u [uname] -p[pass] db_name table1 table2 > table_backup.sql
Vous pouvez même aller jusqu'à compresser automatiquement la sortie en utilisant gzip (si votre base de données est très grande) :
$ mysqldump -u [uname] -p[pass] db_name | gzip > db_backup.sql.gz
Si vous souhaitez effectuer cette opération à distance et que vous avez accès au serveur en question, la procédure suivante fonctionnera (en supposant que le serveur MySQL soit sur le port 3306) :
$ mysqldump -P 3306 -h [ip_address] -u [uname] -p[pass] db_name > db_backup.sql
Pour importer
Tapez la commande suivante pour importer le fichier de données sql :
$ mysql -u username -p -h localhost DATA-BASE-NAME < data.sql
Dans cet exemple, importez le fichier 'data.sql' dans la base de données 'blog' en utilisant vivek comme nom d'utilisateur :
$ mysql -u sat -p -h localhost blog < data.sql
Si vous disposez d'un serveur de base de données dédié, remplacez le nom d'hôte localhost par le nom du serveur réel ou l'adresse IP comme suit :
$ mysql -u username -p -h 202.54.1.10 databasename < data.sql
OU utiliser un nom d'hôte tel que mysql.cyberciti.biz
$ mysql -u username -p -h mysql.cyberciti.biz database-name < data.sql
Si vous ne connaissez pas le nom de la base de données ou si le nom de la base de données est inclus dans le dump sql, vous pouvez essayer quelque chose comme suit :
$ mysql -u username -p -h 202.54.1.10 < data.sql
Référez-vous : http://dev.mysql.com/doc/refman/5.6/en/mysqldump.html
Si vous voulez un outil GUI, vous pouvez probablement utiliser SQLyog ou navicat pour cela.
4 votes
mysqldump
est une commande distincte. Vous ne devriez pas être dansmysql
lors de son exécution. Il suffit de l'écrire devant l'invite de commande. Et le point-virgule sert à indiquer à l'invite mysql que la commande est terminée. Comme vous exécutez mysqldump en tant que programme sur le terminal, vous ne devez pas le terminer par un point-virgule.0 votes
Merci à Ozair et à tous les autres. Y a-t-il un moyen de définir des attributs tels que la clé étrangère, la structure uniquement, les données uniquement ?
0 votes
Voir stackoverflow.com/questions/17666249/
0 votes
J'ai vérifié les options mysql mais je n'ai pas trouvé de moyen d'exporter uniquement la structure et les données.
0 votes
@Samuel Liew Pourquoi cette question est-elle marquée comme étant dupliquée, j'ai posé cette question avant les questions ci-dessus, avez-vous vérifié la date de la question ?