Frage

Ich bin fest. Ich mag im Grunde eine lokale Datendatei (CSV-Datei) von einer entfernten Datenbank mit dem Befehl OUTFILE erstellen.

Ich bin im Grunde genommen, ziehen Daten .. und möchte es auf meinem lokalen Dateiserver erstellen vs. die outfile auf dem Remote-Server zu erstellen. Ich bin der Ferne auf Platz begrenzt ist, so möchte ich lokal die Datei erstellen. Was bin ich dabei, wie dies zu tun? Dank!

Das ist meine Arbeits Syntax so weit auf der Kommandozeile (es wird die Erstellung der Datei ich will, aber auf dem Remote-Server)

mysql -u test -pfoo --database test -h testdb201.name.host.com --port 3306 -ss -e "SELECT 'a','b','c' UNION SELECT col1, col2, col3 INTO OUTFILE '/tmp/mytest.csv' FIELDS TERMINATED BY ','  FROM tst_p000 limit 10"
War es hilfreich?

Lösung

Nach dem MySQL Wählen Sie Syntax , Sie können‘ t Verwendung OUTFILE zur Ausgabe in eine Datei außerhalb des Servers selbst.

Sie müßten die Registerkarte-getrennte Ausgabe der Abfrage in der CSV-Format wie folgt umgerechnet ( sed Befehl gutgeschrieben hier ).

mysql -u test -pfoo --database test -h testdb201.name.host.com --port 3306 -ss -e "SELECT 'a','b','c' UNION SELECT col1, col2, col3 " | sed 's/\t/","/g;s/^/"/;s/$/"/;s/\n//g' > myDump.csv
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top