Importer le fichier SQL dans mysql
j'ai une base de données appelée nitm
. Je n'ai pas créé de tables là-bas. Mais j'ai un fichier SQL qui contient toutes les données nécessaires pour la base de données. Le fichier est nitm.sql
qui est dans C: drive
. Ce fichier a une taille d'environ 103 Mo. J'utilise wamp server.
j'ai utilisé la syntaxe suivante dans la console MySQL pour importer le fichier:
mysql>c:/nitm.sql;
mais ça n'a pas marché.
17 réponses
de la console mysql:
mysql> use DATABASE_NAME;
mysql> source path/to/file.sql;
assurez-vous qu'il n'y a pas de slash avant le chemin si vous faites référence à un chemin relatif... ça m'a pris du temps de réaliser ça! lol
enfin, j'ai résolu le problème. J'ai placé la nitm.fichier sql dans " bin " fichier de `mysql` dossier et utilisé la syntaxe suivante.
C:\wamp\bin\mysql\mysql5.0.51b\bin>mysql -u root nitm < nitm.sql
et ça a marché.
Si vous utilisez wamp, vous pouvez essayer cette. Tapez use your_Database_name
d'abord.
-
cliquez sur l'icône de votre serveur wamp puis recherchez
MYSQL > MSQL Console
puis lancez-le. -
si vous n'avez pas de mot de passe, tapez Entrée et tapez:
mysql> use database_name; mysql> source location_of_your_file;
si vous avez mot de passe, vous promettrez d'entrer un mot de passe. Entrez votre mot de passe, puis tapez:
mysql> use database_name; mysql> source location_of_your_file;
location_of_your_file
devrait ressembler à C:\mydb.sql
le confie est mysql>source C:\mydb.
ce type d'importation SQL dump est très utile pour les gros fichiers SQL.
j'ai copié mon fichier mydb.sq
dans le répertoire C:
.Il devrait être capital C: pour fonctionner
et c'est tout.
sous windows, si la suggestion ci-dessus vous donne une erreur (fichier non trouvé ou unknown db) , vous pouvez vouloir doubler les barres obliques avant:
dans la console mysql:
mysql> use DATABASE_NAME;
mysql> source C://path//to//file.sql;
Ok donc, J'utilise Linux mais je pense que C'est vrai pour Windows aussi. Vous pouvez le faire directement à partir de la commande
> mysql -u <user name> -p<password> <database name> < sqlfilename.sql
ou depuis l'invite mysql, vous pouvez utiliser:
mysql>source sqlfilename.sql
Mais ces deux approches ont leurs propres avantages dans les résultats qu'ils affichent. Dans la première approche, le script se termine dès qu'il rencontre une erreur. Et la meilleure partie est qu'il vous dit exactement le numéro de ligne dans le fichier source où l'erreur s'est produite. Cependant, il n'affiche que des erreurs. S'il n'a pas rencontré d'erreurs, les scripts n'affichent rien. Ce qui peut être un peu mal à l'aise. Parce que vous exécutez le plus souvent un script avec une pile entière de commandes.
Maintenant la deuxième approche (à partir de l'invite mysql) a l'avantage qu'il affiche un message pour chaque commande de MySQL dans le script. S'il rencontre des erreurs, il affiche le message d'erreur mysql mais continue à travers les scripts. Cela peut être bien, car vous pouvez alors revenir en arrière et corriger toutes les erreurs avant d'exécuter le script à nouveau. L'inconvénient est qu'il n'affiche PAS les numéros de ligne dans le script où les erreurs ont été rencontrées. Cela peut être un peu de douleur. Mais les messages d'erreur sont aussi descriptifs de sorte que vous pourriez probablement comprendre où le problème est.
pour ma part, je préfère l'approche en ligne de commande directe.
si vous utilisez xampp
C:\xampp\mysql\bin\mysql -uroot -p nitm < nitm.sql
Vous y êtes presque use
mysql> \. c:/nitm.sql;
vous pouvez également accéder à l'aide par
mysql> \?
pour localhost sur XAMPP. Ouvrez une fenêtre cmd et tapez
cd C:\xampp\mysql\bin
mysql.exe -u root -p
Attention! Pas de demi-côlon après 151980920" Entrez votre mot de passe et tapez
use database_name;
pour sélectionner la base de données dont vous avez besoin.
vérifiez si votre table est là
show tables;
Importer à partir de votre fichier sql
source sqlfile.sql;
j'ai mis mon dossier sur C:\xampp\mysql\bin emplacement dans l'ordre pour ne pas confondre avec les localisations du fichier sql.
N'oubliez pas d'utiliser
charset utf8
si votre fichier sql est en utf-8 :)
donc vous devez faire:
cmd.exe
mysql-u root
mysql> charset utf8
mysql> utiliser mydbname
mysql > source C:\myfolder\myfile.sql
Bonne chance ))
sous Linux j'ai navigué vers le répertoire contenant le .fichier sql avant de commencer mysql. Le curseur du système est maintenant au même endroit que le fichier et vous n'aurez pas besoin d'un chemin. Utilisez la source myData.sql où ma date est remplacée par le nom de votre fichier.
cd whatever directory
mysql - p
se connecter targetDB
source myData.sql
fait
, Essayez:
mysql -u username -p database_name < file.sql
Vérifier MySQL "Options De 151960920" .
Remarque: Il est préférable d'utiliser le chemin complet du fichier SQL file.sql
.
de la ligne de commande (cmd.exe, non pas de l'intérieur shell mysql) essayez quelque chose comme:
type c:/nite.sql | mysql -uuser -ppassword dbname
est-ce que votre dump contient des fonctionnalités qui ne sont pas supportées dans votre version de MySQL? Vous pouvez également essayer de supprimer les déclarations de SET commentées par MySQL.
Je ne sais pas si votre dump vient d'une version Linux de MySQL (fin de ligne)?
j'ai installé mon serveur wamp en d: drive donc vous devez aller sur le chemin suivant de la ligne de commande ur - > (et si vous avez installé ur wamp en c: drive alors il suffit de remplacer le d: wtih c: here)
D:\>cd wamp
D:\wamp>cd bin
D:\wamp\bin>cd mysql
D:\wamp\bin\mysql>cd mysql5.5.8 (whatever ur verserion will be displayed here use keyboard Tab button)
D:\wamp\bin\mysql\mysql5.5.8>cd bin
D:\wamp\bin\mysql\mysql5.5.8\bin>mysql -u root -p password db_name < "d:\backupfile.sql"
ici root est l'utilisateur de mon phpmyadmin mot de passe est le mot de passe pour phpmyadmin donc si vous n'avez pas défini de mot de passe pour root juste rien tapez à cet endroit, db_name est la base de données (pour quelle base de données u r prendre la sauvegarde) , backupfile.sql est le fichier à partir duquel u veut ur sauvegarde de la base de données ur et u peut également changer l'emplacement du fichier de sauvegarde(d:\backupfile.sql) à partir de n'importe quel autre endroit sur votre ordinateur
mysql>c:/nitm.sql;
qui écrirait la sortie de la commande mysql à 'nitm.sql; " (Quel est le ';' est supposé faire?) En supposant que vous avez une copie du fichier original (avant que vous ne l'écriiez) alors:
mysql < c:/nitm.sql
Exporter Des Bases De Données Particulières
djimi:> mysqldump --user=root --host=localhost --port=3306 --password=test -B CCR KIT >ccr_kit_local.sql
ceci exportera les bases de données CCR et KIT...
Importer Tous Exportés DB à Particulier Instance Mysql (Vous devez être là où votre fichier de vidage est)
djimi:> mysql --user=root --host=localhost --port=3306 --password=test < ccr_kit_local.sql
dans Windows OS les commandes suivantes fonctionnent pour moi.
mysql>Use <DatabaseName>
mysql>SOURCE C:/data/ScriptFile.sql;
pas de guillemets simples ou doubles autour du nom de fichier. Chemin de contenir le caractère " / "au lieu de"\".