So importieren Sie eine einzelne Tabelle über die Befehlszeile in die MySQL-Datenbank
140
Ich hatte eine Datenbank erfolgreich über die Befehlszeile importiert, aber jetzt ist mein Schmerzbereich, wie ich eine einzelne Tabelle mit ihren Daten über die Befehlszeile in die vorhandene Datenbank importiere.
Dadurch wird eine Datei mit dem Namen example.sqlunter dem angegebenen Pfad erstellt und der create tableBefehl sql zum Erstellen der Tabelle geschrieben tableName.
Daten in Tabelle importieren
mysql -u username -p databasename < path/example.sql
Dieser Befehl benötigt eine SQL-Datei, die Daten in Form von insertAnweisungen für die Tabelle enthält tableName. Alle insertAnweisungen werden ausgeführt und die Daten werden geladen.
das -u wurde verpasst;) mysqldump -u Benutzername -p Datenbankname tableName> path / example.sql
Kazmin
2
Zum Importieren müssen Sie keinen MySQL-Dump verwenden. mysql -u Benutzername -p Datenbankname tableName <path / example.sql Es sollte Ihren Job machen
Prabhakar Undurthi
8
Der tableNameName wird nicht für alle MySQL-Versionen benötigt und führt zu Fehlern. Daher müssen Sie ihn möglicherweise weglassen!
mchar
1
Ich bekam einen Syntaxfehler, bis ich merkte, dass ich bei der Ausführung in Bash und nicht in MySQL war.
Christia
2
Dies würde nur funktionieren, wenn ich Zugriff auf die Datenbank habe, aus der ich eine bestimmte Tabelle exportieren kann. Wenn ich jedoch einen vollständigen Speicherauszug der Datenbank habe und die zu importierenden Tabellen auswählen möchte, funktioniert diese Lösung nicht. Der verknüpfte Beitrag Kann ich eine einzelne Tabelle aus einer vollständigen mysql mysqldump-Datei wiederherstellen? behebt dieses Problem.
Alle diese Optionen sind in Ordnung, wenn Sie die Option haben, die Daten erneut zu exportieren.
Wenn Sie jedoch eine vorhandene SQL-Datei verwenden und eine bestimmte Tabelle daraus verwenden müssen, können Sie mit diesem Perl-Skript im TimeSheet-Blog die Tabelle in eine separate SQL-Datei extrahieren und anschließend importieren.
Sie müssen den Tabellennamen nicht in der Befehlszeile angeben, da die exportierte SQL-Datei den entsprechenden Aufruf zum Erstellen der Tabelle hat. Alles was Sie brauchen ist mysql -u your_user_name -p database_name < test.sql.
Michael De Silva
1
Hier ist ein Beispiel aus einer exportierten Tabelle: `22 DROP TABLE IF EXISTS account_product_prices; 23 / *! 40101 SET @saved_cs_client = @@ character_set_client /; 24 / ! 40101 SET character_set_client = utf8 * /; 25 TABELLE ERSTELLEN account_product_prices(`
Michael De Silva
5
Melden Sie sich zunächst bei Ihrer Datenbank an und prüfen Sie, ob die zu importierende Datenbanktabelle in Ihrer Datenbank nicht verfügbar ist.
Wenn es verfügbar ist, löschen Sie die Tabelle mit dem Befehl. Andernfalls wird beim Importieren der Tabelle ein Fehler ausgegeben.
DROPTABLE Table_Name;
Wechseln Sie dann in den Ordner, in den Sie die .sqlzu importierende Datei haben, und führen Sie den folgenden Befehl von Ihrem Terminal aus
mysql -u username -p databasename < yourtable.sql
Das Terminal fordert Sie auf, das Passwort einzugeben. Geben Sie es ein und überprüfen Sie die Datenbank.
Für Anfänger beachten Sie bitte, dass Sie vom Terminal aus arbeiten müssen, das sich nicht in der MySQL befindet, nachdem Sie den Befehl ausgeführt haben. Es wird nach dem Passwort db_password gefragt
Venkatesh Kakalwar
2
Auch es funktioniert. In Befehlsform
cd C:\wamp\bin\mysql\mysql5.5.8\bin //hit enter
mysql -u -p databasename //-u=root,-p=blank
Es wäre eine Kombination von EXPORT INTO OUTFILEundLOAD DATA INFILE
Sie müssen diese einzelne Tabelle mit EXPORT INTO OUTFILEexportieren. Dadurch werden Tabellendaten in eine Datei exportiert. Sie können diese bestimmte Tabelle mit importierenLOAD DATA INFILE
Sie können dies im Befehl mysql anstelle des Befehls linux tun.
1.Melden Sie Ihre MySQL an.
2. Führen Sie dies im Befehl mysql aus: use DATABASE_NAME; SET autocommit=0 ; source ABSOLUTE_PATH/TABLE_SQL_FILE.sql ; COMMIT ;
Während dieser Code - Schnipsel zu begrüßen ist, und etwas Hilfe bieten kann, würde es erheblich verbessert , wenn es eine Erklärung enthalten von , wie und warum Dies löst das Problem. Denken Sie daran, dass Sie in Zukunft die Frage für die Leser beantworten, nicht nur für die Person, die jetzt fragt! Bitte bearbeiten Sie Ihre Antwort, um eine Erklärung hinzuzufügen, und geben Sie an, welche Einschränkungen und Annahmen gelten.
Toby Speight
0
-> mysql -h host -u user-p database_name table_name < test_table.sql
Um eine Tabelle in eine Datenbank zu importieren, fügen Sie diese Zeile in Ihre SQL-Datei ein DROP TABLE IF EXIST 'table_name'und führen Sie den Befehl aus , wenn die Tabelle bereits vorhanden ist mysql -u username -p database_name < import_sql_file.sql. Bitte überprüfen Sie den SQL-Dateipfad, bevor Sie den Befehl ausführen.
Antworten:
Linux:
In der Kommandozeile
Setzen Sie Ihre Tabelle in example.sql
Import / Export für einzelne Tabelle:
Tabellenschema exportieren
Dadurch wird eine Datei mit dem Namen
example.sql
unter dem angegebenen Pfad erstellt und dercreate table
Befehl sql zum Erstellen der Tabelle geschriebentableName
.Daten in Tabelle importieren
Dieser Befehl benötigt eine SQL-Datei, die Daten in Form von
insert
Anweisungen für die Tabelle enthälttableName
. Alleinsert
Anweisungen werden ausgeführt und die Daten werden geladen.quelle
tableName
Name wird nicht für alle MySQL-Versionen benötigt und führt zu Fehlern. Daher müssen Sie ihn möglicherweise weglassen!Export:
Import :
Ganze Datenbank :
Einzeltisch :
quelle
Alle diese Optionen sind in Ordnung, wenn Sie die Option haben, die Daten erneut zu exportieren.
Wenn Sie jedoch eine vorhandene SQL-Datei verwenden und eine bestimmte Tabelle daraus verwenden müssen, können Sie mit diesem Perl-Skript im TimeSheet-Blog die Tabelle in eine separate SQL-Datei extrahieren und anschließend importieren.
quelle
Einzelne Tabelle importieren
Um eine einzelne Tabelle in eine vorhandene Datenbank zu importieren, verwenden Sie den folgenden Befehl:
Hinweis: Es ist besser, den vollständigen Pfad der SQL-Datei tableName.sql zu verwenden
quelle
Befehlszeile
Import / Export für einzelne Tabelle:
Tabellenschema exportieren
Dadurch wird eine Datei mit dem Namen test.sql erstellt und der Befehl table sql erstellt, um die Tabelle table_name zu erstellen.
Daten in Tabelle importieren
Stellen Sie sicher, dass sich Ihre Datei test.sql im selben Verzeichnis befindet. Wenn Sie nicht durch den Pfad navigieren, führen Sie den Befehl aus.
quelle
mysql -u your_user_name -p database_name < test.sql
.account_product_prices
; 23 / *! 40101 SET @saved_cs_client = @@ character_set_client /; 24 / ! 40101 SET character_set_client = utf8 * /; 25 TABELLE ERSTELLENaccount_product_prices
(`Melden Sie sich zunächst bei Ihrer Datenbank an und prüfen Sie, ob die zu importierende Datenbanktabelle in Ihrer Datenbank nicht verfügbar ist.
Wenn es verfügbar ist, löschen Sie die Tabelle mit dem Befehl. Andernfalls wird beim Importieren der Tabelle ein Fehler ausgegeben.
Wechseln Sie dann in den Ordner, in den Sie die
.sql
zu importierende Datei haben, und führen Sie den folgenden Befehl von Ihrem Terminal ausDas Terminal fordert Sie auf, das Passwort einzugeben. Geben Sie es ein und überprüfen Sie die Datenbank.
quelle
Es funktioniert richtig ...
Bitte beachten Sie, dass die SQL-Datei Ihre aktuelle Datenbank angegeben hat.
quelle
Wir können einzelne Tabellen mit CMD wie folgt importieren:
quelle
Wenn Sie bereits die gewünschte Tabelle in Ihrer Datenbank haben, löschen Sie sie zuerst und führen Sie dann den folgenden Befehl aus:
quelle
Vom Server zum lokalen (Exportieren)
Vom lokalen zum Server (Importieren)
quelle
Auch es funktioniert. In Befehlsform
quelle
Es wäre eine Kombination von
EXPORT INTO OUTFILE
undLOAD DATA INFILE
Sie müssen diese einzelne Tabelle mit
EXPORT INTO OUTFILE
exportieren. Dadurch werden Tabellendaten in eine Datei exportiert. Sie können diese bestimmte Tabelle mit importierenLOAD DATA INFILE
Siehe doc1 , doc2
quelle
Sie können dies im Befehl mysql anstelle des Befehls linux tun.
1.Melden Sie Ihre MySQL an.
2. Führen Sie dies im Befehl mysql aus:
use DATABASE_NAME;
SET autocommit=0 ; source ABSOLUTE_PATH/TABLE_SQL_FILE.sql ; COMMIT ;
quelle
quelle
quelle
Die Verwendung einer temporären Datenbank kann je nach Größe der Datenbank eine Lösung sein.
quelle
Um eine Tabelle in eine Datenbank zu importieren, fügen Sie diese Zeile in Ihre SQL-Datei ein
DROP TABLE IF EXIST 'table_name'
und führen Sie den Befehl aus , wenn die Tabelle bereits vorhanden istmysql -u username -p database_name < import_sql_file.sql
. Bitte überprüfen Sie den SQL-Dateipfad, bevor Sie den Befehl ausführen.quelle