Mit psql
können wir eine Abfrage-Ausgabe in eine CSV-Datei exportieren.psql Export-Abfrage-Ausgabe in eine neue Tabelle in einem neuen SQLite3 db
psql -d somedb -h localhost -U postgres -p 5432 -c "\COPY (select * from sometable) TO 'sometable.csv' DELIMITER ',' CSV HEADER;"
Allerdings muss ich die Abfrage-Ausgabe in eine neue Tabelle in einer neuen SQLite3-Datenbank exportieren.
Ich schaute auch auf pg_dump
, aber war nicht in der Lage, es herauszufinden, einen Weg damit.
Der Grund, warum ich möchte, ohne zwischen CSV Umwandlung in einen neuen sqlite3 db es als eine neue Tabelle exportieren, weil
- Die Ausgabe der Abfrage in GBs laufen wird, ich habe Einschränkungen Speicherplatz - so anstatt csv export und dann erstellen Sie eine neue sqlite3 db, müssen Sie dies in einem Schuss
hilfreich - Ich gab es eine erste Aufnahme mit dem Befehl 'pg_dump -U postgres --data-only --inserts --table = \" myPgTable \ "myPgDb | grep -v -e '^ SET' -e '^ $' -e '^ -' | sqlite3./mySqlite3Db.db' - es wirft ein paar Fehlerzeilen 'Fehler: nahe Zeile 8: in der Nähe von" SET ": Syntaxfehler' jedoch sehe ich 'mySqlite3Db.db' Größe weiter steigen - kann nicht sagen, ob das narrensicher ist Da der Prozess sehr langsam ist - läuft er für mehr als eine Stunde mit nur 4 MB Daten exportiert - Quellentabelle hat ~ 75 Millionen Datensätze - jede Idee, die Geschwindigkeit zu verbessern? Die Befehlsausgabe 'pg_dump' wird hier eingefügt - https://pastebin.com/rP4bStcb – user3206440