Comment importer une base de données avec mysql depuis un terminal?
Je ne trouve pas la syntaxe exacte.
En supposant que vous soyez sur une console Linux ou Windows:
Demander le mot de passe:
mysql -u <username> -p <databasename> < <filename.sql>
Entrez le mot de passe directement (non sécurisé):
mysql -u <username> -p<PlainPassword> <databasename> < <filename.sql>
Exemple:
mysql -u root -p wp_users < wp_users.sql
mysql -u root -pPassword123 wp_users < wp_users.sql
Voir également:
4.5.1.5. Exécuter des instructions SQL à partir d'un fichier texte
Remarque : Si vous êtes sur Windows, vous devrez alors cd
(changer de répertoire) dans votre répertoire MySQL/bin dans le CMD avant de l'exécuter. la commande.
Manière préférable pour les fenêtres:
Ouvrez la console et lancez le mode interactif MySQL
use <name_of_your_database>;
source <path_of_your_.sql>
mysql -u <USERNAME> -p <DB NAME> < <dump file path>
-u
- pour Nom d'utilisateur
-p
- pour demander le mot de passe
Par exemplemysql -u root -p mydb < /home/db_backup.sql
Vous pouvez également fournir un mot de passe précédé de -p, mais pour des raisons de sécurité, cela n’est pas suggestible. Le mot de passe apparaîtra sur la commande elle-même plutôt masquée.
Du terminal:
mysql -uroot -p --default-character-set=utf8 database_name </database_path/database.sql
Directement à partir de var/www/html
mysql -u username -p database_name < /path/to/file.sql
Depuis mysql:
mysql> use db_name;
mysql> source backup-file.sql
dans le type de terminal
mysql -uroot -p1234; use databasename; source /path/filename.sql
J'utilise généralement cette commande pour charger mes données SQL quand elles sont divisées en fichiers portant des noms: 000-tableA.sql, 001-tableB.sql, 002-tableC.sql.
for anyvar in *.sql; do <path to your bin>/mysql -u<username> -p<password> <database name> < $anyvar; done
Fonctionne bien sur OSX Shell.
La commande ci-dessous fonctionne sur Ubuntu 16.04, je ne suis pas sûr que cela fonctionne ou non sur d'autres plates-formes Linux.
Exporter le fichier SQL:
$ mysqldump -u [user_name] -p [database_name] < [database_name.sql]
Exemple: mysqldump -u racine -p max_development> max_development.sql
Importer un fichier SQL:
$ mysqldump -u [user_name] -p [database_name] > [file_name.sql]
Example: mysqldump -u root -p max_production < max_development.sql
Remarque: le fichier SQL doit exister dans le même répertoire
mysql -u username -ppassword dbname < /path/file-name.sql
exemple
mysql -u root -proot product < /home/myPC/Downloads/tbl_product.sql
Utilisez ceci depuis le terminal
Explication:
Commencez par créer une base de données ou utilisez une base de données existante. Dans mon cas, j'utilise une base de données existante
Chargez la base de données en donnant <name of database> = ClassicModels
dans mon cas et en utilisant l'opérateur <
donnez le chemin d'accès à database = sakila-data.sql
En exécutant show tables, je reçois la liste des tables comme vous pouvez le voir.
Remarque: Dans mon cas, une erreur 1062 s'est produite, car j'essaie de charger à nouveau la même chose.
Après avoir lutté pendant un certain temps, j'ai trouvé l'information dans https://tommcfarlin.com/importing-a-large-database/
Connectez-vous à Mysql (utilisons root pour le nom d'utilisateur et le mot de passe):
mysql -uroot -proot
Connectez-vous à la base de données (disons qu'il s'appelle emptyDatabase (vous devriez recevoir un message de confirmation):
connect emptyDatabase
3 Importez le code source, disons que le fichier s'appelle mySource.sql et qu'il se trouve dans un dossier appelé mySoureDb sous le profil d'un utilisateur appelé myUser:
source /Users/myUser/mySourceDB/mySource.sql
Ouvrez le client en ligne de commande MySQL et tapez votre mot de passe
Passez à la base de données que vous souhaitez utiliser pour importer les données du fichier .sql dans. Faites ceci en tapant:
USE your_database_name
Maintenant, localisez le fichier .sql que vous voulez exécuter.
Si le fichier se trouve dans le répertoire local principal du lecteur C: et que le nom du fichier de script .sql est currentSqlTable.sql
, vous devez entrer:
\. C:\currentSqlTable.sql
et appuyez sur Enter exécuter le fichier de script SQL.
Si vous utilisez sakila-db depuis le site web mysql, il est très facile sur la plate-forme Linux de suivre les étapes mentionnées ci-dessous. Après avoir téléchargé le fichier Zip de sakila-db, extrayez-le. Maintenant vous aurez deux fichiers, l’un est sakila-schema.sql et l’autre est sakila -data.sql .
Veillez à ce que les fichiers extraits soient présents dans le répertoire de base .
Dans Ubuntu, à partir de moniteur MySQL, vous avez déjà utilisé cette syntaxe:
mysql> use <dbname>
-> L'instruction USE indique à MySQL d'utiliser dbname
comme base de données par défaut pour les instructions suivantes.
mysql> source <file-path>
par exemple:
mysql> use phonebook;
mysql> source /tmp/phonebook.sql;
Important: assurez-vous que le fichier SQL est dans un répertoire que mysql peut accéder à aimer/tmp
Ouvrir le terminal ensuite
mysql -u root -p
eg:- mysql -u shabeer -p
Après que créer une base de données
mysql> create database "Name";
eg:- create database INVESTOR;
Puis sélectionnez cette nouvelle base de données "INVESTISSEUR"
mysql> USE INVESTOR;
Sélectionnez le chemin du fichier SQL de la machine
mysql> source /home/shabeer/Desktop/new_file.sql;
Puis appuyez sur Entrée et attendez quelques fois si tout est exécuté, puis
mysql> exit
Avant d'exécuter les commandes sur le terminal, vous devez vous assurer que MySQL est installé sur votre terminal.
Vous pouvez utiliser la commande suivante pour l'installer:
Sudo apt-get update
Sudo apt-get install mysql-server
Référence ici .
Après cela, vous pouvez utiliser les commandes suivantes pour importer une base de données:
mysql -u <username> -p <databasename> < <filename.sql>
Il ne doit y avoir aucun espace entre -p et mot de passe
mysql -u [dbusername] -p[dbpassword] [databasename] < /home/serverusername/public_html/restore_db/database_file.sql
Je l'utilise toujours, ça marche parfaitement. Merci de poser cette question. Passez une bonne journée. Njoy :)
La manière la plus simple d'importer une base de données dans votre MYSQL à partir du terminal est effectuée par le processus mentionné ci-dessous -
mysql -u root -p root database_name < path to your .sql file
Ce que je fais ci-dessus est:
root
& root
)<
puis du chemin d'accès à votre fichier .sql. Par exemple, si mon fichier est stocké dans le Bureau, le chemin sera /home/Desktop/db.sql
C'est ça. Une fois que tout cela est fait, appuyez sur Entrée et attendez que votre fichier .sql soit téléchargé dans la base de données respective.