Amazon Best VPN GoSearch

OnWorks-Favicon

pgloader – Online in der Cloud

Führen Sie pgloader im kostenlosen OnWorks-Hosting-Provider über Ubuntu Online, Fedora Online, Windows-Online-Emulator oder MAC OS-Online-Emulator aus

Dies ist der Befehl pgloader, der im kostenlosen OnWorks-Hosting-Provider mit einer unserer zahlreichen kostenlosen Online-Workstations wie Ubuntu Online, Fedora Online, Windows-Online-Emulator oder MAC OS-Online-Emulator ausgeführt werden kann

PROGRAMM:

NAME/FUNKTION


pgloader - PostgreSQL-Datenlader

ZUSAMMENFASSUNG


pgloader [ ] [ ]...
pgloader [ ] QUELLENZIEL

BESCHREIBUNG


pgloader lädt Daten aus verschiedenen Quellen in PostgreSQL. Es kann die Daten transformieren
liest on-the-fly und sendet Roh-SQL vor und nach dem Laden. Es verwendet die COPY
PostgreSQL-Protokoll, um die Daten in den Server zu streamen, und verwaltet Fehler durch Ausfüllen von a
ein Paar ablehnen.dat und ablehnen.log Dateien.

pgloader arbeitet entweder mit Befehlen, die aus Dateien gelesen werden:

pgloader-Befehle.load

oder indem Sie Argumente und Optionen verwenden, die alle auf der Befehlszeile bereitgestellt werden:

pgloader SOURCE ZIEL

ARGUMENTE


Die pgloader-Argumente können beliebig viele Ladedateien oder ein paar Verbindungen sein
Zeichenfolgen in eine bestimmte Eingabedatei.

SOURCE CONNECTION STRING
Das Format der Quellverbindungszeichenfolge lautet wie folgt:

format:///absolute/path/to/file.ext
format://./relative/path/to/file.ext

Wobei das Format eines sein könnte csv, fixiert, Kopieren, Dbf, db3 or IXF.

db://user:pass@host:port/dbname

Wo db sein könnte SQLite, mysql or Mssql.

Bei Verwendung eines dateibasierten Quellformats unterstützt pgloader auch das native Abrufen der Datei
von einem http-Speicherort und dekomprimieren Sie bei Bedarf ein Archiv. In diesem Fall ist es notwendig
zu verwenden, die --Typ Option, um das erwartete Format der Datei anzugeben. Siehe die Beispiele
unten mit.

Beachten Sie auch, dass einige Dateiformate eine Beschreibung einiger Implementierungsdetails erfordern, wie z
zu lesende Spalten und Trennzeichen und Anführungszeichen beim Laden aus CSV.

Für komplexere Ladeszenarien müssen Sie einen vollständigen Ladebefehl in schreiben
die später in diesem Dokument beschriebene Syntax.

TARGET CONNECTION STRING
Das Format der Zielverbindungszeichenfolge wird später in diesem Dokument ausführlich beschrieben, siehe
Abschnitt Verbindungszeichenfolge.

OPTIONAL


ANFRAGE OPTIONAL
Verwenden Sie diese Optionen, wenn Sie mehr über die Verwendung erfahren möchten pgloader, als diese Optionen
wird verursachen pgloader keine Daten zu laden.

-h, --help
Übersicht über die Befehlsverwendung anzeigen und beenden.

-V, --Version
Pgloader-Versionsstring anzeigen und beenden.

-E, --list-encodings
Listen Sie bekannte Codierungen in dieser Version von pgloader auf.

-U, --upgrade-config
Analysieren Sie die angegebenen Dateien in der Befehlszeile als pgloader.conf Dateien mit dem INI Syntax
die in den pgloader-Versionen 2.x verwendet wurde, und geben Sie die neue Befehlssyntax für . aus
pgloader auf Standardausgabe.

ALLGEMEIN OPTIONAL
Diese Optionen sollen optimieren pgloader Verhalten beim Laden von Daten.

-v, - ausführlich
Seien Sie ausführlich.

-q, --ruhig
Ruhe.

-d, --debuggen
Informationsmeldungen auf Debug-Ebene anzeigen.

-D, --root-dir
Legen Sie das Root-Arbeitsverzeichnis fest (standardmäßig "/tmp/pgloader").

-L, --Logdatei
Legen Sie die pgloader-Protokolldatei fest (standardmäßig "/tmp/pgloader.log").

--log-min-messages
Mindestausführlichkeit, die erforderlich ist, damit die Protokollnachricht in die Protokolldatei gelangt. Einer von
kritisch, Protokoll, Fehler, Warnung, Hinweis, Info oder Debug.

--client-min-messages
Minimale Ausführlichkeit, die erforderlich ist, damit die Protokollnachricht an die Konsole gelangt. Einer von
kritisch, Protokoll, Fehler, Warnung, Hinweis, Info oder Debug.

-S, --Zusammenfassung
Ein Dateiname, in den die Zusammenfassungsausgabe kopiert werden soll. Wenn relativ, ist der Dateiname
erweitert in *Root-Verzeichnis*.

Das Format des Dateinamens ist standardmäßig human lesbar. Es ist möglich zu haben
die Ausgabe in maschinenfreundlichen Formaten wie CSV, COPY (PostgreSQLs eigene KOPIE
Format) oder JSON durch Angabe eines Dateinamens mit der Endung bzw. .csv, .Kopieren or
.json.

-l , --load-lisp-Datei
Geben Sie ein Lisp an Datei zu kompilieren und in das pgloader-Image zu laden, bevor Sie das lesen
Befehle, die es ermöglichen, zusätzliche Transformationsfunktionen zu definieren. Diese Funktionen sollten
in der definiert werden pgloader.transformiert Paket. Diese Option kann mehr als angezeigt werden
einmal in der Kommandozeile.

--Selbst-Upgrade :

Geben Sie a an Verzeichnis wo man pgloader-Quellen findet, damit einer der allerersten ist
Dinge, die es tut, ist das dynamische Laden (und das Kompilieren in Maschinencode) eines anderen
Version von sich selbst, normalerweise eine neuere wie ein sehr neuer Git-Checkout.

COMMAND LINE NUR OPERATIONS
Diese Optionen sollen bei der Verwendung verwendet werden pgloader eher nur über die Kommandozeile
als die Verwendung einer Befehlsdatei und der umfangreichen Befehlsklauseln und des Parsers. In einfachen Fällen kann es
viel einfacher zu bedienen sein SOURCE und TARGET direkt auf der Befehlszeile, dann optimieren Sie die
Laden mit diesen Optionen:

· --mit "Möglichkeit":

Ermöglicht das Einstellen von Optionen über die Befehlszeile. Sie können diese Option so oft wie möglich verwenden
Sie wollen. Die Optionsargumente müssen dem MIT Klausel für den Quelltyp der
SOURCE Spezifikation, wie später in diesem Dokument beschrieben.

· --einstellen "guc_name=´Wert´"

Ermöglicht das Einstellen der PostgreSQL-Konfiguration über die Befehlszeile. Beachten Sie, dass die Option
parsing ist das gleiche wie bei der Verwendung aus dem SET Befehlsklausel, insbesondere müssen Sie
schließen Sie den guc-Wert in einfache Anführungszeichen ein.

· --Gebiet "..."

Ermöglicht das Festlegen einer Quellfelddefinition. Die Felder werden in der Reihenfolge akkumuliert, die auf angegeben ist
die Befehlszeile. Es ist möglich, entweder a --Gebiet Option pro Feld in der Quelle
Datei, oder Felddefinitionen durch ein Komma zu trennen, wie Sie es in der HABEN
FELDER Klausel.

· --werfen "..."

Ermöglicht das Festlegen einer bestimmten Casting-Regel zum Laden der Daten.

· --Typ csv|fixed|db3|ixf|sqlite|mysql|mssql

Ermöglicht das Erzwingen des Quelltyps, falls die SOURCE parsing ist nicht zufriedenstellend.

· --Codierung

Legen Sie die Codierung der Quelldatei fest, aus der Daten geladen werden sollen.

· --Vor

Analysieren Sie den angegebenen Dateinamen für SQL-Abfragen und führen Sie sie vor der Zieldatenbank aus
Laden der Daten aus der Quelle. Die Abfragen werden von pgloader selbst geparst: Sie brauchen
durch ein Semikolon (;) abgeschlossen werden und die Datei kann Folgendes enthalten: \i or \ir Befehle an
das eine andere Datei.

· --nach

Analysieren Sie den angegebenen Dateinamen für SQL-Abfragen und führen Sie sie anschließend mit der Zieldatenbank aus
nachdem Sie die Daten aus der Quelle geladen haben. Die Abfragen werden auf die gleiche Weise geparst wie bei
--Vor Möglichkeit, siehe oben.

MEHR ERFAHREN DEBUGGEN INFORMATIONEN
Um die maximale Menge an Debug-Informationen zu erhalten, können Sie sowohl die - ausführlich und den
--debuggen schaltet gleichzeitig, was so viel bedeutet wie --client-min-messages
die Datenerfassung. Dann zeigen die Protokollnachrichten die verarbeiteten Daten in den Fällen, in denen die
Code hat explizite Unterstützung dafür.

ANWENDUNG Beispiele:


Überprüfen Sie die Befehlszeilenoptionen und die Version von pgloader:

pgloader --Hilfe
pgloader --version

Laden von a Komplex Befehl
Verwenden Sie die Befehlsdatei als pgloader-Befehlsargument, pgloader analysiert diese Datei und
Führen Sie die darin enthaltenen Befehle aus:

pgloader --verbose ./test/csv-districts.load

CSV
Laden Sie Daten aus einer CSV-Datei in eine bereits vorhandene Tabelle in Ihrer Datenbank:

pgloader --type csv \
--Feld-ID --Feld Feld \
--mit abschneiden \
--with "Felder abgeschlossen mit ´,´" \
./test/data/matching-1.csv \
postgres:///pgloader?tablename=matching

In diesem Beispiel wird das gesamte Laden von der Befehlszeile aus gesteuert, wodurch die Notwendigkeit von
Schreiben eines Befehls vollständig in der pgloader-Befehlssyntax. Da es jedoch keinen Befehl gibt,
Die benötigten zusätzlichen Informationen müssen in der Befehlszeile mit dem bereitgestellt werden --Typ und
--Gebiet und --mit Schalter.

Für die Dokumentation zu den verfügbaren Syntaxen für die --Gebiet und --mit Schalter, bitte
Weitere Informationen finden Sie im Abschnitt CSV weiter unten auf der Manpage.

Beachten Sie auch, dass der PostgreSQL-URI das Ziel enthält Tabellenname.

Lesebrillen von STDIN
Dateibasierte pgloader-Quellen können von der Standardeingabe geladen werden, wie im Folgenden beschrieben
Beispiel:

pgloader --type csv \
--field "usps,geoid,aland,awater,aland_sqmi,awater_sqmi,intptlat,intptlong" \
--with "header überspringen = 1" \
--with "Felder abgeschlossen mit ´\t´" \
- \
postgresql:///pgloader?districts_longlat \
< test/data/2013_Gaz_113CDs_national.txt

Der Bindestrich (-) Zeichen als Quelle wird verwendet, um zu bedeuten Standard Varianten des Eingangssignals:, wie unter Unix üblich
Befehlszeilen. Mit dieser Technik ist es möglich, komprimierte Inhalte zum pgloader zu streamen.
mit der Unix-Pipe:

gunzip -c source.gz | pgloader --type csv ... - pgsql:///target?foo

Laden von CSV verfügbar bis HTTP
Der gleiche Befehl wie oben kann auch ausgeführt werden, wenn die CSV-Datei zufällig auf einem gefunden wird
entfernter HTTP-Standort:

pgloader --type csv \
--field "usps,geoid,aland,awater,aland_sqmi,awater_sqmi,intptlat,intptlong" \
--with "header überspringen = 1" \
--with "Felder abgeschlossen mit ´\t´" \
http://pgsql.tapoueh.org/temp/2013_Gaz_113CDs_national.txt \
postgresql:///pgloader?districts_longlat

In diesem Fall müssen einige weitere Optionen verwendet werden, da die Datei einen einzeiligen Header enthält
(am häufigsten sind das Spaltennamen, könnte ein Copyright-Hinweis sein). Auch in diesem Fall sind wir
spezifizieren Sie alle Felder direkt in einem einzigen --Gebiet Optionsargument.

Auch hier muss die PostgreSQL-Zielverbindungszeichenfolge die Tabellenname Option und du
müssen sicherstellen, dass die Zieltabelle existiert und zu den Daten passen kann. Hier ist der SQL-Befehl
in diesem Beispiel verwendet, falls Sie es selbst ausprobieren möchten:

Tabelle erstellen Bezirke_longlat
(
usps-Text,
Geoid-Text,
Aland Bigint,
awater bigint,
aland_sqmi doppelte Genauigkeit,
awater_sqmi doppelte Genauigkeit,
intptlat doppelte Genauigkeit,
intptlong doppelte Genauigkeit
);

Beachten Sie auch, dass derselbe Befehl gegen eine archivierte Version derselben Daten funktioniert.
z.B http://pgsql.tapoueh.org/temp/2013_Gaz_113CDs_national.txt.gz.

Schließlich ist es wichtig zu beachten, dass pgloader zuerst den Inhalt von der HTTP-URL holt
es in eine lokale Datei, dann erweitern Sie das Archiv, wenn es als eines erkannt wird, und erst dann
verarbeitet die lokal expandierte Datei.

In einigen Fällen, entweder weil pgloader keine direkte Unterstützung für Ihr Archivformat bietet oder
Vielleicht, weil das Erweitern des Archivs in Ihrer Umgebung nicht möglich ist, möchten Sie vielleicht?
Strom den Inhalt direkt von seinem entfernten Standort in PostgreSQL. So geht's
dass, mit dem alten kampferprobten Unix-Pipes-Trick:

curl http://pgsql.tapoueh.org/temp/2013_Gaz_113CDs_national.txt.gz \
| gunzip -c \
| pgloader --type csv \
--field "usps,geoid,aland,awater,aland_sqmi,awater_sqmi,intptlat,intptlong"
--with "header überspringen = 1" \
--with "Felder abgeschlossen mit ´\t´" \
- \
postgresql:///pgloader?districts_longlat

Jetzt kümmert sich das Betriebssystem um das Streaming und die Pufferung zwischen dem Netzwerk und dem
Befehle und pgloader kümmern sich um das Streamen der Daten nach PostgreSQL.

Migration von SQLite
Der folgende Befehl öffnet die SQLite-Datenbank und erkennt ihre Tabellendefinitionen
einschließlich Indizes und Fremdschlüsseln, diese Definitionen migrieren, während Guss der Datentyp
Spezifikationen in ihr PostgreSQL-Äquivalent und migrieren die Daten dann über:

erstelltb neuedb
pgloader ./test/sqlite/sqlite.db postgresql:///newdb

Migration von MySQL
Erstellen Sie einfach eine Datenbank, in der die MySQL-Daten und -Definitionen gehostet werden sollen, und lassen Sie pgloader dies tun
die Migration für Sie in einer einzigen Befehlszeile:

erstelltb pagila
pgloader mysql://user@localhost/sakila postgresql:///pagila

Holen an archivierte DBF Datei von a HTTP entfernt Standort
Es ist für pgloader möglich, eine Datei von HTTP herunterzuladen, zu dearchivieren und erst dann zu öffnen
it, um das Schema zu erkennen und dann die Daten zu laden:

erstelltb foo
pgloader – geben Sie dbf ein http://www.insee.fr/fr/methodes/nomenclatures/cog/telechargement/2013/dbf/historiq2013.zip postgresql:///foo

Hier ist es dem pgloader nicht möglich die Art der Datenquelle zu erraten, also
es ist notwendig, die zu verwenden --Typ Befehlszeilenschalter.

CHARGEN UND ERNEU VERHALTEN


Um Daten in PostgreSQL zu laden, verwendet pgloader die COPY Streaming-Protokoll. Während dies der ist
schnellere Möglichkeit zum Laden von Daten, COPY hat einen wichtigen Nachteil: Sobald PostgreSQL ein
Fehler bei jedem an ihn gesendeten Datenbit, was auch immer das Problem ist, der gesamte Datensatz ist
von PostgreSQL abgelehnt.

Um das zu umgehen, schneidet pgloader die Daten in Chargen von jeweils 25000 Zeilen, damit wenn
Wenn ein Problem auftritt, betrifft es nur so viele Datenzeilen. Jede Charge wird gespeichert
während die COPY Streaming geschieht, um Fehler behandeln zu können, falls welche auftreten.

Wenn PostgreSQL den gesamten Stapel ablehnt, protokolliert pgloader die Fehlermeldung und isoliert dann die
fehlerhafte Zeile(n) aus den akzeptierten, indem Sie die gestapelten Zeilen in kleineren Stapeln wiederholen. Machen
dass pgloader die KONTEXT Fehlermeldung von der fehlgeschlagenen KOPIE, wie die Nachricht
enthält die Zeilennummer, in der der Fehler in der Charge gefunden wurde, wie im Folgenden beschrieben
Beispiel:

KONTEXT: KOPIER-Fehler, Zeile 3, Spalte b: "2006-13-11"

Mit diesen Informationen lädt pgloader alle Zeilen im Stapel neu, bevor der Fehler auftritt
ein, protokollieren Sie das fehlerhafte als abgelehnt, und versuchen Sie dann, den Rest des Stapels in a . zu laden
einzelnen Versuch, der andere fehlerhafte Daten enthalten kann oder nicht.

Am Ende eines Ladevorgangs mit abgelehnten Zeilen finden Sie zwei Dateien im Root-Verzeichnis
location, in einem Verzeichnis mit dem gleichen Namen wie die Zieldatenbank Ihres Setups. Die
Dateinamen sind die Zieltabelle und ihre Erweiterungen sind .dat für die abgelehnten Daten und
.log für die Datei, die die vollständigen PostgreSQL-Client-seitigen Protokolle über die abgelehnten Daten enthält.

Der .dat Datei ist in PostgreSQL formatiert das Textformat COPY wie in dokumentiert
http://www.postgresql.org/docs/9.2/static/sql-copy.html#AEN66609 .

A HINWEIS ÜBER UNS PERFORMANCE


pgloader wurde mit Blick auf die Leistung entwickelt, um mit jedem fertig zu werden
wachsenden Anforderungen beim Laden großer Datenmengen in PostgreSQL.

Die grundlegende Architektur, die es verwendet, ist das alte Unix-Pipe-Modell, bei dem ein Thread verantwortlich ist
zum Laden der Daten (Lesen einer CSV-Datei, Abfragen von MySQL usw.) und füllt vorverarbeitet
Daten in eine Warteschlange. Ein anderer Thread speist aus der Warteschlange, wenden Sie mehr an Transformationen
zu den Eingabedaten und streamen das Endergebnis mit dem COPY-Protokoll an PostgreSQL.

Wenn eine Datei angegeben wird, die PostgreSQL COPY Befehl weiß, wie zu parsen, und wenn die Datei
keine fehlerhaften Daten enthält, dann wird pgloader nie so schnell sein wie nur mit
PostgreSQL COPY Befehl.

Beachten Sie, dass die COPY Befehl ist darauf beschränkt, entweder von seiner Standardeingabe zu lesen oder
aus einer lokalen Datei im Dateisystem des Servers, dem Kommandozeilen-Tool psql implementiert a
\Kopieren Befehl, der weiß, wie eine Datei lokal zum Client über das Netzwerk gestreamt wird und
in den PostgreSQL-Server ein, wobei das gleiche Protokoll verwendet wird, das pgloader verwendet.

SOURCE FORMATEN


pgloader unterstützt die folgenden Eingabeformate:

· csv, das auch tsv und andere gängige Varianten enthält, in denen Sie die ändern können
Separator und den zitieren Regeln und wie es geht Flucht Zitate sich;

· Datei mit festen Spalten, in der pgloader flexibel genug ist, um Quelldateien aufzunehmen
fehlende Spalten (zottig fixiert Länge Überblick Dateien existieren);

· PostgreSLQ COPY-formatierte Dateien gemäß der COPY TEXT-Dokumentation von PostgreSQL,
wie die von pgloader vorbereiteten Ablehnungsdateien;

· dbase-Dateien, die als db3- oder dbf-Datei bekannt sind;

· ixf-formatierte Dateien, wobei ixf ein binäres Speicherformat von IBM ist;

· sqlite-Datenbanken mit vollautomatischer Erkennung des Schemas und erweiterten Besetzungsregeln;

· MySQL-Datenbanken mit vollautomatischer Schemaerkennung und erweiterten Cast-Regeln;

· MS SQL-Datenbanken mit vollständig automatischer Erkennung des Schemas und erweiterten Cast-Regeln.

PLOADER BEFEHLE SYNTAX


pgloader implementiert eine domänenspezifische Sprache, die es ermöglicht, komplexes Laden von Daten einzurichten
Skripte, die berechnete Spalten verarbeiten und die Eingabedaten im Handumdrehen bereinigen. Für mehr
komplexen Datenladeszenarien müssen Sie die Syntax von DSL erlernen. Es ist
soll DBA vertraut erscheinen, indem es von SQL inspiriert wird, wo es Sinn macht, was nicht der Fall ist
immerhin so viel.

Die pgloader-Befehle folgen denselben globalen Grammatikregeln. Jeder von ihnen könnte unterstützen
nur eine Teilmenge der allgemeinen Optionen und bieten spezifische Optionen.

BELASTUNG
VON [ FELDER HABEN ]
HINEIN [ ZIELSÄULEN ]

[ MIT ]

[ EINSTELLEN ]

[ VOR DEM LADEN [ TUN | AUSFÜHREN ] ... ]
[ NACH DEM LADEN [ DO | AUSFÜHREN ] ... ]
;

Die Hauptsätze sind die BELASTUNG, AB, INTO und MIT Klauseln, die jeder Befehl implementiert.
Einige Befehle implementieren dann die SET Befehl oder einige spezifische Klauseln wie der CAST
Klausel.

COMMON Klauseln


Einige Klauseln sind allen Befehlen gemeinsam:

· AB

Der AB -Klausel gibt an, woher die Daten gelesen werden sollen, und jeder Befehl führt seine
eigene Quellenvariante. Zum Beispiel die CSV Quelle unterstützt Inline-, Standard herunter ,ein
Dateiname, ein Dateiname in Anführungszeichen und a DATEINAME PASSEND Klausel (siehe oben); während die
MySQL source unterstützt nur eine MySQL-Datenbank-URI-Spezifikation.

In allen Fällen ist die AB -Klausel kann ihren Wert aus einer Umgebungsvariablen lesen
bei Verwendung des Formulars GETENV ´varname´.

· INTO

Der PostgreSQL-Verbindungs-URI muss den Namen der Zieltabelle enthalten, in die geladen werden soll
die Daten hinein. Diese Tabelle muss bereits in PostgreSQL erstellt worden sein, und der Name
könnte schemaqualifiziert sein.

Der INTO Zieldatenbankverbindungs-URI kann aus dem Wert einer Umgebung geparst werden
variabel bei Verwendung des Formulars GETENV ´varname´.

Dann INTO Option unterstützt auch eine optionale durch Kommas getrennte Liste von Zielspalten,
die entweder der Name eines Eingangs sind Feld oder die durch Leerzeichen getrennte Liste der
Name der Zielspalte, ihr PostgreSQL-Datentyp und a VERWENDUNG Ausdruck.

Der VERWENDUNG Ausdruck kann jede gültige Common Lisp-Form sein und wird mit dem gelesen
aktuelles Paket eingestellt auf pgloader.transformiert, damit Sie die in . definierten Funktionen verwenden können
dieses Pakets, wie zum Beispiel Funktionen, die dynamisch mit dem --Belastung Befehlszeile
Parameters.

. Der VERWENDUNG Ausdruck wird zur Laufzeit in nativen Code kompiliert.

Diese Funktion ermöglicht es pgloader, eine beliebige Anzahl von Feldern in einer CSV-Datei in eine Datei zu laden
möglicherweise unterschiedliche Anzahl von Spalten in der Datenbank, dafür benutzerdefinierten Code verwenden
Projektion.

· MIT

Eine Reihe von Optionen, die auf den Befehl angewendet werden sollen, unter Verwendung einer globalen Syntax von entweder:

· Haupt = Wert

· - ganz ohne irgendetwas tun oder drücken zu müssen.

· do nicht - ganz ohne irgendetwas tun oder drücken zu müssen.

Einzelheiten finden Sie in jedem einzelnen Befehl.

· SET

Diese Klausel ermöglicht die Angabe von Sitzungsparametern, die für alle geöffneten Sitzungen festgelegt werden
von pgloader. Es erwartet eine Liste von Parameternamen, das Gleichheitszeichen, dann die
Wert in einfachen Anführungszeichen als kommagetrennte Liste.

Die Namen und Werte der Parameter werden von pgloader nicht validiert, sie werden angegeben
unverändert zu PostgreSQL.

· VOR BELASTUNG DO

Sie können SQL-Abfragen für die Datenbank ausführen, bevor Sie die Daten aus dem CSV
Datei. Die häufigsten SQL-Abfragen sind CREATE TABELLE IF NICHT VORHANDEN damit die Daten
geladen.

Jeder Befehl muss sein Dollarnotiert: es muss mit einem doppelten Dollarzeichen beginnen und enden,-
$$. Abfragen in Dollarnotierungen werden dann durch Kommas getrennt. Es werden keine zusätzlichen Satzzeichen erwartet
nach der letzten SQL-Abfrage.

· VOR BELASTUNG EXECUTE

Gleiches Verhalten wie im VOR BELASTUNG DO Klausel. Ermöglicht das Lesen der SQL-Abfragen
aus einer SQL-Datei. Implementiert Unterstützung für PostgreSQL-Dollar-Zitate und die \i und \ir
beinhalten Einrichtungen wie in psql Batch-Modus (wo sie dasselbe sind).

· AFTER BELASTUNG DO

Gleiches Format wie VOR BELASTUNG DO, sind die in diesem Abschnitt in Dollar notierten Abfragen
ausgeführt, sobald der Ladevorgang abgeschlossen ist. Das ist der richtige Zeitpunkt, um Indizes zu erstellen und
Einschränkungen oder aktivieren Sie Trigger erneut.

· AFTER BELASTUNG EXECUTE

Gleiches Verhalten wie im AFTER BELASTUNG DO Klausel. Ermöglicht das Lesen der SQL-Abfragen von
eine SQL-Datei. Implementiert Unterstützung für PostgreSQL-Dollar-Zitate und die \i und \ir
beinhalten Einrichtungen wie in psql Batch-Modus (wo sie dasselbe sind).

Verbindungen schaffen Schnur
Der Parameter wird erwartet als a Verbindungen schaffen URI wie dokumentiert
in der PostgreSQL-Dokumentation unter
http://www.postgresql.org/docs/9.3/static/libpq-connect.html#LIBPQ-CONNSTRING.

postgresql://[user[:password]@][netloc][:port][/dbname][?option=value&...]

Kennzahlen:

· Benutzer

Kann ein beliebiges Zeichen enthalten, einschließlich Doppelpunkt (:), die dann verdoppelt werden muss (::) und
at-zeichen (@), die dann verdoppelt werden muss (@@).

Wenn es weggelassen wird, Benutzer name wird standardmäßig auf den Wert des PGBENUTZER Umgebungsvariable,
und wenn es nicht gesetzt ist, wird der Wert von USER variable Umgebung

· Passwort

Kann ein beliebiges Zeichen enthalten, einschließlich des at-Zeichens (@), die dann verdoppelt werden muss (@@).
Um das Passwort leer zu lassen, wenn die Benutzer Name endet mit at at Zeichen, dann musst du
Verwenden Sie die Syntax user:@.

Wenn es weggelassen wird, Passwort standardmäßig auf den Wert von PGPASSWORT -Umgebung
Variable, wenn sie gesetzt ist, andernfalls wird das Passwort nicht gesetzt.

· netloc

Kann entweder ein Hostname in gepunkteter Notation oder ein IPv4- oder ein Unix-Domain-Socket sein
Weg. Leer ist der Standard-Netzwerkspeicherort unter einem System, das Unix Domain
Buchse diese Methode wird bevorzugt, sonst netloc Standard auf localhost.

Es ist möglich, die zu erzwingen Unix Domain Buchse Pfad mithilfe der Syntax
unix:/path/to/where/the/socket/file/is, um einen nicht standardmäßigen Socket-Pfad zu erzwingen und a
Nicht-Standard-Port, Sie hätten:

postgresql://unix:/ Tmp:54321/Datenbankname

Der netloc standardmäßig auf den Wert von PGHOST Umgebungsvariable, und wenn sie nicht gesetzt ist,
entweder auf die Standardeinstellung Unix Socket-Pfad bei Ausführung auf einem Unix-System und localhost
Andernfalls.

· Datenbankname

Sollte eine richtige Kennung sein (Buchstabe gefolgt von einer Mischung aus Buchstaben, Ziffern und dem
Satzzeichen Komma (,), Strich (-) und unterstreichen (_).

Wenn es weggelassen wird, Datenbankname wird standardmäßig der Wert der Umgebungsvariablen verwendet PG-DATENBANK,
und wenn das nicht gesetzt ist, zum Benutzer Wert wie oben bestimmt.

· Optionen

Die optionalen Parameter müssen mit dem Formular angegeben werden Name = value, und Sie können verwenden
mehrere Parameter durch Trennen mit einem kaufmännischen Und (&) Zeichen.

Hier werden nur einige Optionen unterstützt, Tabellenname (was mit a qualified qualifiziert werden könnte
Schemaname) SSL-Modus, Gastgeber, port , Datenbankname, Benutzer und Passwort.

Der SSL-Modus Parameterwerte können einer von . sein deaktivieren, erlauben, bevorzugen or erfordern.

Aus Gründen der Abwärtskompatibilität ist es möglich, die Tabellenname ganz ohne irgendetwas tun oder drücken zu müssen.
direkt, ohne die zu buchstabieren Tabellenname= Teile.

Die Optionen überschreiben die Haupt-URI-Komponenten, wenn beide angegeben sind und die Verwendung der
prozentkodierte Optionsparameter ermöglichen die Verwendung von Passwörtern, die mit einem Doppelpunkt beginnen und
Umgehung der Parsing-Beschränkungen anderer URI-Komponenten.

Normale Ausdrücke
Mehrere im Folgenden aufgeführte Klauseln akzeptieren regulär Ausdrücke mit der GMT
Eingaberegeln:

· Ein regulärer Ausdruck beginnt mit einem Tilde-Zeichen (~),

· folgt dann ein Eröffnungsschild,

· dann ist jedes Zeichen erlaubt und wird als Teil des regulären Ausdrucks betrachtet, außer
für das Schlussschild,

· dann wird ein Schlussschild erwartet.

Das öffnende und schließende Zeichen sind paarweise erlaubt, hier ist die vollständige Liste der erlaubten
Trennzeichen:

~//
~[]
~{}
~()
~<>
~""
~´´
~||
~##

Wählen Sie die Trennzeichen aus, die nicht mit dem kollidieren regulär Ausdruck du versuchst es
Eingang. Wenn Ihr Ausdruck so ist, dass Sie ihn bei keiner der Lösungen eingeben können, wird der
Stellen, an denen solche Ausdrücke erlaubt sind, sollten eine Liste von Ausdrücken zulassen.

Ihre Nachricht
Jeder Befehl kann Kommentare enthalten, die diesen Eingaberegeln folgen:

· das -- Trennzeichen beginnt einen Kommentar, der mit dem Ende der aktuellen Zeile endet,

· die Trennzeichen /* und */ jeweils einen Kommentar starten und beenden, der in . zu finden ist
in der Mitte eines Befehls oder über mehrere Zeilen erstrecken.

Jeder Ort, an dem Sie a . eingeben könnten Leerzeichen werde auch einen Kommentar annehmen.

Stapel Verhalten Optionen
Alle pgloader-Befehle unterstützen a MIT -Klausel, die die Angabe von Optionen ermöglicht.
Einige Optionen sind generisch und werden von allen Befehlen akzeptiert, wie z Portion Verhalten
Optionen, und einige Optionen sind spezifisch für einen Datenquellentyp, z. B. CSV überspringen Kopfzeile
.

Die globalen Optionen für das Stapelverhalten sind:

· Portion Reihen

Akzeptiert einen numerischen Wert als Argument, der als maximale Anzahl von Zeilen verwendet wird, die in a . zulässig sind
Charge. Die Standardeinstellung ist 25 000 und kann geändert werden, um bessere Leistungen zu erzielen
Eigenschaften oder um die Speichernutzung des pgloaders zu kontrollieren;

· Portion Größe

Nimmt eine Speichereinheit als Argument, wie zum Beispiel 20 MB, sein Standardwert. Akzeptiert
Multiplikatoren sind kB, MB, GB, TB und PB. Der Fall ist wichtig, um nicht zu verwechseln
über Bits versus Bytes reden wir hier nur von Bytes.

· Portion Parallelität

Akzeptiert einen numerischen Wert als Argument, standardmäßig auf 10. Das ist die Anzahl der Chargen, die
pgloader ermöglicht es, im Speicher zu bauen, auch wenn nur ein einzelner Batch gleichzeitig möglich ist
an PostgreSQL gesendet werden.

Das gleichzeitige Senden von mehr als einem einzelnen Stapel steht auf der TODO-Liste von
pgloader, ist aber noch nicht implementiert. Bei dieser Option geht es um die Kontrolle des Speichers
Bedürfnisse von pgloader als Kompromiss zu den Leistungsmerkmalen, und nicht um
parallele Aktivität von pgloader.

Andere Optionen sind für jede Eingangsquelle spezifisch, bitte beachten Sie die spezifischen Teile der
Dokumentation für ihre Auflistung und Abdeckung.

Eine Charge wird dann geschlossen, sobald entweder die Portion Reihen oder unter der Portion Größe Schwelle ist
gekreuzt, je nachdem, was zuerst eintritt. In Fällen, in denen eine Charge wegen der
Portion Größe Einstellung, a debuggen Level-Log-Meldung wird ausgegeben, wie viele Zeilen in die gepasst haben
übergroß Stapel.

BELASTUNG CSV


Dieser Befehl weist pgloader an, Daten von a . zu laden CSV Datei. Hier ist ein Beispiel:

CSV-Datei LADEN
VON ´GeoLiteCity-Blocks.csv´ MIT ENCODING iso-646-us
FELDER HABEN
(
startIpNum, endIpNum, locId
)
IN postgresql://user@localhost:54393/dbname?geolite.blocks
ZIELSÄULEN
(
iprange ip4r mit (ip-range startIpNum endIpNum),
locId
)
MIT abschneiden,
Kopfzeile überspringen = 2,
Felder optional umschlossen von ´"´,
Felder, die durch Backslash-Quote maskiert sind,
Felder mit ´\t´ . abgeschlossen

SET work_mem auf ´32 MB´, maintenance_work_mem auf ´64 MB´;

Der csv Der format-Befehl akzeptiert die folgenden Klauseln und Optionen:

· AB

Dateiname, aus dem die Daten geladen werden sollen. Akzeptiert ein CODIERUNG Möglichkeit. Verwenden Sie die
--list-encodings Option, um zu erfahren, welche Codierungsnamen unterstützt werden.

Der Dateiname kann in einfache Anführungszeichen eingeschlossen werden und einer der folgenden sein
Sonderwerte:

· Inline-

Die Daten werden nach dem Ende der geparsten Befehle gefunden. Beliebig viele Leerzeilen
zwischen dem Ende der Befehle und dem Anfang der Daten wird akzeptiert.

· Standard

Liest die Daten aus dem Standard-Eingabestream.

· DATEINAMEN PASSEND

Die ganze Abstimmung Klausel muss der folgenden Regel folgen:

[ ALLE DATEINAMEN | [ ERSTER ] DATEINAME ]
PASSENDE regexp
[ IM VERZEICHNIS ´...´ ]

Der Abstimmung Klausel gilt gegeben regulär Ausdruck (genaue Syntax siehe oben, mehrere
Optionen können hier verwendet werden) zu Dateinamen. Es ist dann möglich, Daten nur von den
erstes Spiel von allen.

Das optionale IN DIRECTORY -Klausel ermöglicht die Angabe, welches Verzeichnis zum Auffinden der
Datendateien und kann entweder relativ zum Ort sein, von dem die Befehlsdatei gelesen wird, oder
absolut. Das angegebene Verzeichnis muss vorhanden sein.

Der AB Option unterstützt auch eine optionale durch Kommas getrennte Liste von Feld Namen beschreiben
was wird in der erwartet CSV Datendatei, optional eingeleitet durch die Klausel HABEN FELDER.

Jeder Feldname kann entweder nur ein Name sein oder ein Name mit einem bestimmten Leser
Optionen für dieses Feld, eingeschlossen in eckige Klammern und durch Kommas getrennt. Unterstützt
feldleseroptionen sind:

· beendet by

Siehe die Beschreibung von Feld beendet by unten mit.

Die Verarbeitung dieser Option ist derzeit nicht implementiert.

· Datum Format

Wenn das Feld vom Datumstyp erwartet wird, ermöglicht diese Option die Angabe der
Datumsformat, das in der Datei verwendet wird.

Datumsformatzeichenfolgen sind Vorlagenzeichenfolgen, die gegen PostgreSQL modelliert sind zu_char
Unterstützung für Vorlagenzeichenfolgen, beschränkt auf die folgenden Muster:

· YYYY, YYY, YY für den Jahresteil

· MM für den numerischen Monatsteil

· DD für den numerischen Tagesteil

· HH, HH12, HH24 für den Stundenteil

· morgens, morgens, morgens, morgens

· Uhr, Uhr, Uhr, Uhr

· MI für den Minutenteil

· SS für den Sekundenteil

· MS für den Millisekundenteil (4 Stellen)

· US für den Mikrosekundenteil (6-stellig)

· ungeparste Satzzeichen: - . * # @ T / \ und Leerzeichen

Hier ist ein Beispiel für a Datum Format Spezifikation:

Spaltenname [Datumsformat ´YYYY-MM-DD HH24-MI-SS.US´]

· null if

Diese Option nimmt ein Argument an, das entweder das Schlüsselwort ist Rohlinge oder ein doppelt zitiertes
String.

Wann Rohlinge verwendet wird und der gelesene Feldwert nur Leerzeichen enthält,
dann wird es automatisch in ein SQL umgewandelt NULL Wert.

Wenn eine Zeichenfolge in doppelten Anführungszeichen verwendet wird und diese Zeichenfolge als Feldwert gelesen wird, dann
der Feldwert wird automatisch in eine SQL umgewandelt NULL Wert.

· trimmen beide Leerzeichen, trimmen links Leerzeichen, trimmen Recht Leerzeichen

Diese Option ermöglicht das Trimmen von Leerzeichen in den gelesenen Daten, entweder von beiden Seiten des
Daten oder nur die Leerzeichen auf der linken Seite des Streifens oder nur
die auf der rechten Seite der Zeichenfolge.

· MIT

Beim Laden von a CSV Datei werden die folgenden Optionen unterstützt:

· abschneiden

Wenn diese Option aufgeführt ist, gibt pgloader Folgendes aus: KÜRZEN Befehl gegen das PostgreSQL
Zieltabelle, bevor Sie die Datendatei lesen.

· fallen lassen Indizes

Wenn diese Option aufgeführt ist, treten pgloader-Probleme auf DROP INDEX Befehle gegen alle
Indizes, die auf der Zieltabelle definiert sind, bevor Sie die Daten kopieren, dann CREATE INDEX
Befehle, sobald die COPY erledigt.

Um die bestmögliche Leistung zu erzielen, werden alle Indizes in . erstellt
parallel und wenn fertig, werden die Primärschlüssel wieder aus den eindeutigen Indizes erstellt
erstellt. Dieser zweistufige Prozess ermöglicht die parallele Erstellung des Primärschlüsselindex
die anderen Indizes, da nur die ALTER TABELLE Befehl braucht ein Zugang exklusiv sperren on
die Zieltabelle.

· deaktivieren löst

Wenn diese Option aufgeführt ist, gibt pgloader eine ALTER TABELLE ... DEAKTIVIEREN TRIGGER ALLER
Befehl gegen die PostgreSQL-Zieltabelle, bevor Sie die Daten kopieren, dann der Befehl
ALTER TABELLE ... AKTIVIEREN TRIGGER ALLER einmal der COPY erledigt.

Diese Option ermöglicht das Laden von Daten in eine bereits vorhandene Tabelle ohne Berücksichtigung der fremd Haupt
Einschränkungen und benutzerdefinierten Triggern und können zu ungültigen fremd Haupt
Einschränkungen sobald die Daten geladen sind. Mit Vorsicht verwenden.

· überspringen Kopfzeile

Akzeptiert einen numerischen Wert als Argument. Weisen Sie pgloader an, so viele Zeilen am zu überspringen
Anfang der Eingabedatei.

· csv Kopfzeile

Verwenden Sie die erste Zeile, die danach gelesen wird überspringen Kopfzeile als Liste der zu findenden CSV-Feldnamen
in der CSV-Datei mit den gleichen CSV-Parametern wie für die CSV-Daten.

· trimmen nicht zitiert Rohlinge

Beim Lesen von Werten ohne Anführungszeichen in der CSV Datei, entfernen Sie die Leerzeichen zwischen den
Trennzeichen und den Wert. Dieses Verhalten ist die Standardeinstellung.

· halten nicht zitiert Rohlinge

Beim Lesen von Werten ohne Anführungszeichen in der CSV Datei, lassen Sie Leerzeichen zwischen den
Trennzeichen und den Wert.

· Felder optional Anbei by

Nimmt ein einzelnes Zeichen als Argument, das in einfachen Anführungszeichen stehen muss, und
könnte als druckbares Zeichen selbst angegeben werden, der Sonderwert \t für a
Tabulatorzeichen, oder 0x dann ein hexadezimaler Wert, der als ASCII-Code für die
Charakter.

Dieses Zeichen wird als Anführungszeichen im verwendet CSV Datei und standardmäßig auf
Doppelzitat.

· Felder nicht Anbei

Standardmäßig verwendet pgloader das doppelte Anführungszeichen als einschließendes Zeichen.
Wenn Sie eine CSV-Datei haben, in der Felder nicht eingeschlossen sind und doppelte Anführungszeichen als
erwartetes gewöhnliches Zeichen, dann verwenden Sie die Option Felder nicht Anbei für den CSV
Parser, um diese Werte zu akzeptieren.

· Felder entkam by

Nimmt entweder den Sonderwert Backslash-Zitat or doppeltes Anführungszeichen, oder jeder unterstützte Wert
von dem Felder beendet by Möglichkeit (siehe unten). Dieser Wert wird verwendet, um zu erkennen
Feldtrennzeichen mit Escapezeichen, wenn sie sich in den Datenfeldern selbst befinden.
Der Standardwert ist doppeltes Anführungszeichen.

· csv Flucht Modus

Nimmt entweder den Sonderwert Angebot! (Standardeinstellung) oder Folgende und erlaubt die CSV
Parser, um entweder nur das Escape-Feldtrennzeichen oder ein beliebiges Zeichen (einschließlich CSV
Daten) bei Verwendung der Folgende Wert.

· Felder beendet by

Nimmt ein einzelnes Zeichen als Argument, das in einfachen Anführungszeichen stehen muss, und
könnte als druckbares Zeichen selbst angegeben werden, der Sonderwert \t für a
Tabulatorzeichen, oder 0x dann ein hexadezimaler Wert, der als ASCII-Code für die
Charakter.

Dieses Zeichen wird als verwendet Feld Separator beim lesen CSV Daten.

· Linien beendet by

Nimmt ein einzelnes Zeichen als Argument, das in einfachen Anführungszeichen stehen muss, und
könnte als druckbares Zeichen selbst angegeben werden, der Sonderwert \t für a
Tabulatorzeichen, oder 0x dann ein hexadezimaler Wert, der als ASCII-Code für die
Charakter.

Dieses Zeichen wird verwendet, um zu erkennen Ende der Linie Zustand beim Lesen der CSV Daten.

BELASTUNG FIXED COLS


Dieser Befehl weist pgloader an, Daten aus einer Textdatei mit angeordneten Spalten zu laden
in einem fixiert Größe Benehmen. Hier ist ein Beispiel:

LAST FEST
VON inline
(
a von 0 für 10,
b von 10 für 8,
c von 18 für 8,
d von 26 für 17 [null wenn Leerzeichen, rechten Leerraum trimmen]
)
IN postgresql:///pgloader?behoben
(
a, b,
c Zeit mit (Zeit-ohne-Trennzeichen c),
d
)

MIT abschneiden

SET client_encoding auf ´latin1´,
work_mem nach ´14MB´,
standard_conforming_strings zu ´on´

VOR DEM LADEN TUN
$$ Tabelle löschen, falls vorhanden, behoben; $$,
$$ Tabelle erstellen behoben (
eine ganze Zahl,
b Datum,
c Zeit,
d-Text
);
$$;

01234567892008052011431250erste Zeile
01234562008052115182300links blank-gepolstert
12345678902008052208231560andere Linie
2345609872014092914371500
2345678902014092914371520

Der fixiert Der format-Befehl akzeptiert die folgenden Klauseln und Optionen:

· AB

Dateiname, aus dem die Daten geladen werden sollen. Akzeptiert ein CODIERUNG Möglichkeit. Verwenden Sie die
--list-encodings Option, um zu erfahren, welche Codierungsnamen unterstützt werden.

Der Dateiname kann in einfache Anführungszeichen eingeschlossen werden und einer der folgenden sein
Sonderwerte:

· Inline-

Die Daten werden nach dem Ende der geparsten Befehle gefunden. Beliebig viele Leerzeilen
zwischen dem Ende der Befehle und dem Anfang der Daten wird akzeptiert.

· Standard

Liest die Daten aus dem Standard-Eingabestream.

Der AB Option unterstützt auch eine optionale durch Kommas getrennte Liste von Feld Namen beschreiben
was wird in der erwartet FIXED Datendatei.

Jeder Feldname besteht aus dem Feldnamen gefolgt von spezifischen Leseroptionen für
dieses Feld. Folgende Leseoptionen pro Feld werden unterstützt, wobei nur Anfang und
Länge erforderlich sind.

· Anfang

Position in der Zeile, an der der Wert dieses Felds gelesen werden soll. Kann mit eingegeben werden
Dezimalstellen oder 0x dann hexadezimale Ziffern.

· Länge

Wie viele Bytes sollen aus dem gelesen werden? Anfang Position, um den Wert dieses Felds zu lesen. Gleiches Format
as Anfang.

Diese optionalen Parameter müssen in eckige Klammern eingeschlossen und durch Kommas getrennt werden:

· beendet by

Siehe die Beschreibung von Feld beendet by unten mit.

Die Verarbeitung dieser Option ist derzeit nicht implementiert.

· Datum Format

Wenn das Feld vom Datumstyp erwartet wird, ermöglicht diese Option die Angabe der
Datumsformat, das in der Datei verwendet wird.

Datumsformatzeichenfolgen sind Vorlagenzeichenfolgen, die gegen PostgreSQL modelliert sind zu_char
Unterstützung für Vorlagenzeichenfolgen, beschränkt auf die folgenden Muster:

· YYYY, YYY, YY für den Jahresteil

· MM für den numerischen Monatsteil

· DD für den numerischen Tagesteil

· HH, HH12, HH24 für den Stundenteil

· morgens, morgens, morgens, morgens

· Uhr, Uhr, Uhr, Uhr

· MI für den Minutenteil

· SS für den Sekundenteil

· MS für den Millisekundenteil (4 Stellen)

· US für den Mikrosekundenteil (6-stellig)

· ungeparste Satzzeichen: - . * # @ T / \ und Leerzeichen

Hier ist ein Beispiel für a Datum Format Spezifikation:

Spaltenname [Datumsformat ´YYYY-MM-DD HH24-MI-SS.US´]

· null if

Diese Option nimmt ein Argument an, das entweder das Schlüsselwort ist Rohlinge oder ein doppelt zitiertes
String.

Wann Rohlinge verwendet wird und der gelesene Feldwert nur Leerzeichen enthält,
dann wird es automatisch in ein SQL umgewandelt NULL Wert.

Wenn eine Zeichenfolge in doppelten Anführungszeichen verwendet wird und diese Zeichenfolge als Feldwert gelesen wird, dann
der Feldwert wird automatisch in eine SQL umgewandelt NULL Wert.

· trimmen beide Leerzeichen, trimmen links Leerzeichen, trimmen Recht Leerzeichen

Diese Option ermöglicht das Trimmen von Leerzeichen in den gelesenen Daten, entweder von beiden Seiten des
Daten oder nur die Leerzeichen auf der linken Seite des Streifens oder nur
die auf der rechten Seite der Zeichenfolge.

· MIT

Beim Laden von a FIXED Datei werden die folgenden Optionen unterstützt:

· abschneiden

Wenn diese Option aufgeführt ist, gibt pgloader Folgendes aus: KÜRZEN Befehl gegen das PostgreSQL
Zieltabelle, bevor Sie die Datendatei lesen.

· deaktivieren löst

Wenn diese Option aufgeführt ist, gibt pgloader eine ALTER TABELLE ... DEAKTIVIEREN TRIGGER ALLER
Befehl gegen die PostgreSQL-Zieltabelle, bevor Sie die Daten kopieren, dann der Befehl
ALTER TABELLE ... AKTIVIEREN TRIGGER ALLER einmal der COPY erledigt.

Diese Option ermöglicht das Laden von Daten in eine bereits vorhandene Tabelle ohne Berücksichtigung der fremd Haupt
Einschränkungen und benutzerdefinierten Triggern und können zu ungültigen fremd Haupt
Einschränkungen sobald die Daten geladen sind. Mit Vorsicht verwenden.

· überspringen Kopfzeile

Akzeptiert einen numerischen Wert als Argument. Weisen Sie pgloader an, so viele Zeilen am zu überspringen
Anfang der Eingabedatei.

BELASTUNG COPY FORMATIERT DATEIEN


Dieser Befehl weist pgloader an, aus einer Datei zu laden, die COPY TEXT-Daten enthält, als
in der PostgreSQL-Dokumentation beschrieben. Hier ist ein Beispiel:

KOPIE LADEN
VON copy://./data/track.copy
(
Trackid, Track, Album, Medien, Genre, Komponist,
Millisekunden, Byte, Stückpreis
)
IN postgresql:///pgloader?track_full

MIT abschneiden

SET client_encoding auf ´latin1´,
work_mem nach ´14MB´,
standard_conforming_strings zu ´on´

VOR DEM LADEN TUN
$$ Tabelle löschen, falls vorhanden track_full; $$,
$$ Tabelle track_full erstellen (
Trackid Bigserie,
Track-Text,
Albumtext,
Medientext,
Genretext,
Komponistentext,
Millisekunden Bigint,
Byte Bigint,
Stückpreis numerisch
);
$$;

Der COPY Der format-Befehl akzeptiert die folgenden Klauseln und Optionen:

· AB

Dateiname, aus dem die Daten geladen werden sollen. Dies unterstützt lokale Dateien, HTTP-URLs und Zip
Dateien, die eine einzelne dbf-Datei mit demselben Namen enthalten. Holen Sie sich eine solche ZIP-Datei von einem
HTTP-Adresse wird natürlich unterstützt.

· MIT

Beim Laden von a COPY Datei werden die folgenden Optionen unterstützt:

· Trennzeichen

Nimmt ein einzelnes Zeichen als Argument, das in einfachen Anführungszeichen stehen muss, und
könnte als druckbares Zeichen selbst angegeben werden, der Sonderwert \t für a
Tabulatorzeichen, oder 0x dann ein hexadezimaler Wert, der als ASCII-Code für die
Charakter.

Dieses Zeichen wird als verwendet Trennzeichen beim Auslesen der Daten, ähnlich wie beim
PostgreSQL COPY .

· null

Akzeptiert eine Zeichenfolge in Anführungszeichen als Argument (Anführungszeichen können entweder doppelte oder einfache Anführungszeichen sein
Anführungszeichen) und verwendet diese Zeichenfolge als NULL Darstellung in den Daten.

Dies ist ähnlich dem null COPY Option in PostgreSQL.

· abschneiden

Wenn diese Option aufgeführt ist, gibt pgloader Folgendes aus: KÜRZEN Befehl gegen das PostgreSQL
Zieltabelle, bevor Sie die Datendatei lesen.

· deaktivieren löst

Wenn diese Option aufgeführt ist, gibt pgloader eine ALTER TABELLE ... DEAKTIVIEREN TRIGGER ALLER
Befehl gegen die PostgreSQL-Zieltabelle, bevor Sie die Daten kopieren, dann der Befehl
ALTER TABELLE ... AKTIVIEREN TRIGGER ALLER einmal der COPY erledigt.

Diese Option ermöglicht das Laden von Daten in eine bereits vorhandene Tabelle ohne Berücksichtigung der fremd Haupt
Einschränkungen und benutzerdefinierten Triggern und können zu ungültigen fremd Haupt
Einschränkungen sobald die Daten geladen sind. Mit Vorsicht verwenden.

· überspringen Kopfzeile

Akzeptiert einen numerischen Wert als Argument. Weisen Sie pgloader an, so viele Zeilen am zu überspringen
Anfang der Eingabedatei.

BELASTUNG DBF


Dieser Befehl weist pgloader an, Daten von a . zu laden DBF Datei. Hier ist ein Beispiel:

DBF LADEN
AB http://www.insee.fr/fr/methodes/nomenclatures/cog/telechargement/2013/dbf/reg2013.dbf
IN postgresql://user@localhost/dbname
WITH truncate, Tabelle erstellen;

Der Dbf Der format-Befehl akzeptiert die folgenden Klauseln und Optionen:

· AB

Dateiname, aus dem die Daten geladen werden sollen. Dies unterstützt lokale Dateien, HTTP-URLs und Zip
Dateien, die eine einzelne dbf-Datei mit demselben Namen enthalten. Holen Sie sich eine solche ZIP-Datei von einem
HTTP-Adresse wird natürlich unterstützt.

· MIT

Beim Laden von a DBF Datei werden die folgenden Optionen unterstützt:

· abschneiden

Wenn diese Option aufgeführt ist, gibt pgloader Folgendes aus: KÜRZEN Befehl gegen das PostgreSQL
Zieltabelle, bevor Sie die Datendatei lesen.

· deaktivieren löst

Wenn diese Option aufgeführt ist, gibt pgloader eine ALTER TABELLE ... DEAKTIVIEREN TRIGGER ALLER
Befehl gegen die PostgreSQL-Zieltabelle, bevor Sie die Daten kopieren, dann der Befehl
ALTER TABELLE ... AKTIVIEREN TRIGGER ALLER einmal der COPY erledigt.

Diese Option ermöglicht das Laden von Daten in eine bereits vorhandene Tabelle ohne Berücksichtigung der fremd Haupt
Einschränkungen und benutzerdefinierten Triggern und können zu ungültigen fremd Haupt
Einschränkungen sobald die Daten geladen sind. Mit Vorsicht verwenden.

· erstellen Tabelle

Wenn diese Option aufgeführt ist, erstellt pgloader die Tabelle mit den Metadaten in
DBF Datei, die eine Liste von Feldern mit ihrem Datentyp enthalten muss. Ein Standard
Die Datentypkonvertierung von DBF nach PostgreSQL ist abgeschlossen.

· Tabelle Name

Diese Option erwartet als Wert den möglicherweise qualifizierten Namen der zu erstellenden Tabelle.

BELASTUNG IXF


Dieser Befehl weist pgloader an, Daten von einem IBM . zu laden IXF Datei. Hier ist ein Beispiel:

IXF . LADEN
AUS data/nsitra.test1.ixf
IN postgresql:///pgloader?nsitra.test1
WITH truncate, Tabelle erstellen

VOR DEM LADEN TUN
$$ Schema erstellen, falls nicht vorhanden nsitra; $$,
$$ Tabelle löschen, falls vorhanden nsitra.test1; $$;

Der IXF Der format-Befehl akzeptiert die folgenden Klauseln und Optionen:

· AB

Dateiname, aus dem die Daten geladen werden sollen. Dies unterstützt lokale Dateien, HTTP-URLs und Zip
Dateien, die eine einzelne ixf-Datei mit demselben Namen enthalten. Holen Sie sich eine solche ZIP-Datei von einem
HTTP-Adresse wird natürlich unterstützt.

· MIT

Beim Laden von a IXF Datei werden die folgenden Optionen unterstützt:

· abschneiden

Wenn diese Option aufgeführt ist, gibt pgloader Folgendes aus: KÜRZEN Befehl gegen das PostgreSQL
Zieltabelle, bevor Sie die Datendatei lesen.

· deaktivieren löst

Wenn diese Option aufgeführt ist, gibt pgloader eine ALTER TABELLE ... DEAKTIVIEREN TRIGGER ALLER
Befehl gegen die PostgreSQL-Zieltabelle, bevor Sie die Daten kopieren, dann der Befehl
ALTER TABELLE ... AKTIVIEREN TRIGGER ALLER einmal der COPY erledigt.

Diese Option ermöglicht das Laden von Daten in eine bereits vorhandene Tabelle ohne Berücksichtigung der fremd Haupt
Einschränkungen und benutzerdefinierten Triggern und können zu ungültigen fremd Haupt
Einschränkungen sobald die Daten geladen sind. Mit Vorsicht verwenden.

· erstellen Tabelle

Wenn diese Option aufgeführt ist, erstellt pgloader die Tabelle mit den Metadaten in
DBF Datei, die eine Liste von Feldern mit ihrem Datentyp enthalten muss. Ein Standard
Die Datentypkonvertierung von DBF nach PostgreSQL ist abgeschlossen.

· Tabelle Name

Diese Option erwartet als Wert den möglicherweise qualifizierten Namen der zu erstellenden Tabelle.

BELASTUNG ARCHIV


Dieser Befehl weist pgloader an, Daten aus einer oder mehreren Dateien zu laden, die in einem
Archiv. Derzeit ist das einzige unterstützte Archivformat Postleitzahl, und das Archiv könnte sein
heruntergeladen von an HTTP URL.

Hier ist ein Beispiel:

ARCHIV LADEN
VON /Users/dim/Downloads/GeoLiteCity-latest.zip
IN postgresql:///ip4r

VOR DEM LADEN
DO $$ Erweiterung erstellen, falls nicht vorhanden ip4r; $$,
$$ Schema erstellen, wenn kein Geolite vorhanden ist; $$,

´geolith.sql´ . AUSFÜHREN

CSV-Datei LADEN
AUS DATEINAME-ABPASSUNG ~/GeoLiteCity-Location.csv/
MIT CODIERUNG iso-8859-1
(
locId,
Land,
Region null, wenn Leerzeichen,
Stadt null wenn Leerzeichen,
postalCode null wenn Leerzeichen,
Breite,
Längengrad,
metroCode null wenn Leerzeichen,
areaCode null wenn Leerzeichen
)
INTO postgresql:///ip4r?geolith.location
(
Ort, Land, Region, Stadt, Postleitzahl,
Standortpunkt mit (Format nil "(~a,~a)" Längengrad Breitengrad),
metroCode, Vorwahl
)
WITH Kopfzeile überspringen = 2,
Felder optional umschlossen von ´"´,
Felder mit doppelten Anführungszeichen,
Felder mit ´,´ . abgeschlossen

UND CSV LADEN
AUS DATEINAME-ABPASSUNG ~/GeoLiteCity-Blocks.csv/
MIT CODIERUNG iso-8859-1
(
startIpNum, endIpNum, locId
)
INTO postgresql:///ip4r?geolith.blocks
(
iprange ip4r mit (ip-range startIpNum endIpNum),
locId
)
WITH Kopfzeile überspringen = 2,
Felder optional umschlossen von ´"´,
Felder mit doppelten Anführungszeichen,
Felder mit ´,´ . abgeschlossen

ENDLICH TUN
$$ Index blocks_ip4r_idx auf geolite.blocks erstellen mit gist(iprange); $$;

Der Archiv Befehl akzeptiert die folgenden Klauseln und Optionen:

· AB

Dateiname oder HTTP-URI, von dem die Daten geladen werden sollen. Bei Angabe einer HTTP-URL wird das verlinkte
Datei wird vor der Verarbeitung lokal heruntergeladen.

Wenn die Datei a . ist Reißverschluss Datei, das Befehlszeilen-Dienstprogramm entpacken wird verwendet, um die
in Dateien archivieren in $ TMPDIRoder / Tmp if $ TMPDIR ist nicht gesetzt oder auf ein nicht vorhandenes gesetzt
Verzeichnis.

Dann werden die folgenden Befehle aus dem Verzeichnis der obersten Ebene verwendet, in dem das Archiv
wurde erweitert.

· Befehl [ UND Befehl ... ]

Eine Reihe von Befehlen gegen den Inhalt des Archivs, derzeit nur
CSV,FEST und DBF Befehle werden unterstützt.

Beachten Sie, dass Befehle die Klausel unterstützen AB DATEINAME PASSEND was es erlaubt
pgloader-Befehl nicht von den genauen Namen der Archivverzeichnisse abhängen.

Dieselbe Klausel kann auch auf mehrere Dateien angewendet werden, wenn die Schreibweise verwendet wird AB ALLER
DATEINAMEN PASSEND und einen regulären Ausdruck.

Die ganze Abstimmung Klausel muss der folgenden Regel folgen:

VON [ ALLE DATEINAMEN | [ ERSTER ] DATEINAME ] ÜBEREINSTIMMUNG

· ENDLICH DO

SQL-Abfragen, die ausgeführt werden sollen, sobald die Daten geladen sind, wie z CREATE INDEX.

BELASTUNG MYSQL DATABASE


Dieser Befehl weist pgloader an, Daten von einer Datenbankverbindung zu laden. Das einzige
unterstützte Datenbankquelle ist derzeit MySQL, und pgloader unterstützt die dynamische Konvertierung
das Schema der Quelldatenbank und die Indexerstellung.

Es wird ein Standardsatz von Casting-Regeln bereitgestellt, der möglicherweise überladen und angehängt wird
Befehl.

Hier ist ein Beispiel:

DATENBANK LADEN
VON mysql:// Root@localhost/sakila
IN postgresql://localhost:54393/sakila

WITH include drop, Tabellen erstellen, Indizes erstellen, Sequenzen zurücksetzen

SETZE maintenance_work_mem auf ´128MB´,
work_mem nach ´12MB´,
Suchpfad zu ´sakila´

CAST-Typ datetime to timestamptz drop default drop not null using zero-dates-to-null,
type date drop not null drop default mit zero-dates-to-null,
-- tippe tinyint in boolean mit tinyint-to-boolean,
Geben Sie das Jahr in eine ganze Zahl ein

ANSICHTEN MATERIALISIEREN film_list, staff_list

-- EINSCHLIESSLICH NUR PASSENDE TABELLE NAMEN ~/film/, Schauspieler
-- AUSSCHLIESSLICH TABELLENNAMEN, DIE MIT ~ . PASSEN
-- DECODIERUNG TABELLENNAMEN ÜBEREINSTIMMEN ~/durcheinander/, ~/kodieren/ ALS utf8

VOR DEM LADEN TUN
$$ Schema erstellen, falls nicht vorhanden sakila; $$;

Der Datenbank Befehl akzeptiert die folgenden Klauseln und Optionen:

· AB

Muss eine Verbindungs-URL sein, die auf eine MySQL-Datenbank verweist. Im Moment ist nur MySQL
als pgloader-Quelle unterstützt.

Wenn die Verbindungs-URI einen Tabellennamen enthält, wird nur diese Tabelle migriert von
MySQL zu PostgreSQL.

· MIT

Beim Laden von a MySQL Datenbank werden die folgenden Optionen unterstützt, und die
Standard MIT Klausel lautet: nicht abschneiden, erstellen Tabellen, das fallen lassen, erstellen Indizes, zurückstellen
Sequenzen, fremd Tasten, Koffer Identifikatoren.

MIT Optionen:

· das fallen lassen

Wenn diese Option aufgeführt ist, löscht pgloader alle Tabellen im Ziel-PostgreSQL
Datenbank, deren Namen in der SQLite-Datenbank erscheinen. Diese Option ermöglicht die Verwendung der
Derselbe Befehl mehrmals hintereinander, bis Sie alle Optionen herausgefunden haben, beginnend
automatisch aus einer sauberen Umgebung. Bitte beachte, dass CASCADE wird verwendet, um sicherzustellen
dass Tabellen gelöscht werden, selbst wenn Fremdschlüssel auf sie verweisen. Das ist
genau was das fallen lassen soll tun: alle Zieltabellen löschen und neu erstellen
Them.

Bei der Verwendung ist große Vorsicht geboten das fallen lassen, da es zu kaskadieren wird alle
Objekte, die auf die Zieltabellen verweisen, möglicherweise auch andere Tabellen, die nicht
aus dem Quell-DB geladen wird.

· das nicht fallen lassen

Wenn diese Option aufgeführt ist, enthält pgloader keine DROP Aussage beim Laden
die Daten.

· abschneiden

Wenn diese Option aufgeführt ist, gibt pgloader die KÜRZEN Befehl gegen jeden
PostgreSQL-Tabelle kurz vor dem Laden von Daten.

· nicht abschneiden

Wenn diese Option aufgeführt ist, gibt pgloader keine KÜRZEN Befehl.

· deaktivieren löst

Wenn diese Option aufgeführt ist, gibt pgloader eine ALTER TABELLE ... DEAKTIVIEREN TRIGGER ALLER
Befehl gegen die PostgreSQL-Zieltabelle, bevor Sie die Daten kopieren, dann der Befehl
ALTER TABELLE ... AKTIVIEREN TRIGGER ALLER einmal der COPY erledigt.

Diese Option ermöglicht das Laden von Daten in eine bereits vorhandene Tabelle ohne Berücksichtigung der fremd Haupt
Einschränkungen und benutzerdefinierten Triggern und können zu ungültigen fremd Haupt
Einschränkungen sobald die Daten geladen sind. Mit Vorsicht verwenden.

· erstellen Tabellen

Wenn diese Option aufgeführt ist, erstellt pgloader die Tabelle mit den Metadaten in
MySQL Datei, die eine Liste von Feldern mit ihrem Datentyp enthalten muss. Ein Standard
Die Datentypkonvertierung von DBF nach PostgreSQL ist abgeschlossen.

· erstellen nicht Tabellen

Wenn diese Option aufgeführt ist, überspringt pgloader die Tabellenerstellung vor dem Laden von Daten.
Zieltabellen müssen dann bereits vorhanden sein.

· erstellen Indizes

Wenn diese Option aufgeführt ist, ruft pgloader die Definitionen aller gefundenen Indizes ab
die MySQL-Datenbank und erstellen Sie denselben Satz von Indexdefinitionen für PostgreSQL
Datenbank.

· erstellen nicht Indizes

Wenn diese Option aufgeführt ist, überspringt pgloader das Erstellen von Indizes.

· eindeutig Index Namen, bewahren Index Namen

MySQL-Indexnamen sind pro Tabelle eindeutig, während Indexnamen in PostgreSQL sein müssen
eindeutig pro Schema. Der Standard für pgloader ist, den Indexnamen durch Präfixen zu ändern
es mit idx_OID woher OID ist der interne numerische Bezeichner der Tabelle, der Index ist
gegen gebaut.

In einigen Fällen, wie wenn die DDL vollständig einem Framework überlassen wird, kann dies sinnvoll sein
damit pgloader auf die Handhabung eindeutiger Indexnamen verzichtet, was durch die Verwendung von . erreicht wird
bewahren Index Namen .

Die Standardeinstellung ist zu eindeutig Index Namen.

Auch bei Verwendung der Option bewahren Index Namen, MySQL-Primärschlüsselindizes namens
"PRIMARY" erhalten ihre Namen eindeutig. Andernfalls würde die primäre
Schlüssel in PostgreSQL neu erstellt werden, wobei die Indexnamen pro eindeutig sein müssen
Schema.

· fremd Tasten

Wenn diese Option aufgeführt ist, ruft pgloader die Definitionen aller Fremdschlüssel ab
in der MySQL-Datenbank gefunden und erstellen Sie denselben Satz von Fremdschlüsseldefinitionen gegen
die PostgreSQL-Datenbank.

· nicht fremd Tasten

Wenn diese Option aufgeführt ist, überspringt pgloader das Erstellen von Fremdschlüsseln.

· zurückstellen Sequenzen

Wenn diese Option aufgeführt ist, am Ende des Datenladens und nachdem die Indizes
alle erstellt wurden, setzt pgloader alle erstellten PostgreSQL-Sequenzen auf den aktuellen zurück
Maximalwert der Spalte, an die sie angehängt sind.

Die Optionen Schema einzige und die Datenerfassung einzige haben keine Auswirkungen auf diese Option.

· zurückstellen nicht Sequenzen

Wenn diese Option aufgeführt ist, überspringt pgloader die Rücksetzsequenzen nach dem Laden.

Die Optionen Schema einzige und die Datenerfassung einzige haben keine Auswirkungen auf diese Option.

· Koffer Identifikatoren

Wenn diese Option aufgeführt ist, konvertiert pgloader alle MySQL-Kennungen (Tabellennamen,
Indexnamen, Spaltennamen) zu Koffer, außer PostgreSQL reserviert Schlüsselwörter.

Das PostgreSQL reserviert Schlüsselwörter werden dynamisch über das System ermittelt
Funktion pg_get_keywords().

· Angebot! Identifikatoren

Wenn diese Option aufgeführt ist, zitiert pgloader alle MySQL-Identifikatoren, damit ihre Groß-/Kleinschreibung
wird respektiert. Beachten Sie, dass Sie dann in Ihrer Bewerbung dasselbe tun müssen
Code-Abfragen.

· Schema einzige

Wenn diese Option aufgeführt ist, unterlässt pgloader die Migration der Daten. Beachten Sie, dass
das Schema enthält in diesem Zusammenhang die Indizes, wenn die Option erstellen Indizes hat
aufgeführt worden.

· die Datenerfassung einzige

Wenn diese Option aufgeführt ist, gibt pgloader nur die COPY Aussagen, ohne etwas zu tun
andere Verarbeitung.

· CAST

Die cast-Klausel ermöglicht es, benutzerdefinierte Casting-Regeln anzugeben, um entweder den Standard zu überladen
Besetzungsregeln oder bei Sonderfällen zu ergänzen.

Es wird erwartet, dass eine Casting-Regel einer der folgenden Formen folgt:

Typ [ ... ] zu [ ... ]
Säule . [ ] zu ...

Es ist möglich für a Guss regieren um entweder mit einem MySQL-Datentyp oder mit einem abzugleichen
gegeben Überblick Name in einer gegebenen Tabelle Name. Diese Flexibilität ermöglicht es, Fälle zu bewältigen, in denen
der Typ Tinyint könnte verwendet worden sein als boolean in einigen Fällen, aber als smallint in
Andere.

Der Guss Ohne eine erfahrene Medienplanung zur Festlegung von Regeln und Strategien beschleunigt der programmatische Medieneinkauf einfach die Rate der verschwenderischen Ausgaben. der Reihe nach angewendet werden, verhindert die erste Übereinstimmung, dass die folgenden Regeln
angewendet, und benutzerdefinierte Regeln werden zuerst ausgewertet.

Die unterstützten Wachen sind:

· wann Standard Wert

Die Casting-Regel wird nur auf MySQL-Spalten des Quelltyps angewendet, die
gegeben Wert, die eine Zeichenfolge in einfachen oder doppelten Anführungszeichen sein muss.

· wann Typmod Ausdruck

Die Casting-Regel wird nur auf MySQL-Spalten des Quelltyps angewendet, die a
Typmod Wert, der dem angegebenen entspricht Typmod Ausdruckdem „Vermischten Geschmack“. Seine Typmod ist getrennt in seine
Präzision und Treppe Komponenten.

Beispiel für eine Umsetzungsregel mit a Typmod bewachen:

type char when (= Precision 1) to char keep typemod

Dieser Ausdruck wandelt MySQL verkohlen(1) Spalte in eine PostgreSQL-Spalte vom Typ verkohlen(1) während
unter Berücksichtigung des allgemeinen Falles Zeichen(N) wird von der Standardumsetzungsregel in a . umgewandelt
PostgreSQL-Typ Varchar(N).

· mit extra auto_inkrement

Die Casting-Regel wird nur auf MySQL-Spalten angewendet, die die extra Überblick
auto_inkrement Optionssatz, so dass es möglich ist z. B. zu zielen seriell statt
ganze Zahl.

Das standardmäßige Übereinstimmungsverhalten, wenn diese Option nicht gesetzt ist, besteht darin, beide Spalten abzugleichen
mit der zusätzlichen Definition und ohne.

Das bedeutet, wenn Sie eine Casting-Regel implementieren möchten, die entweder auf seriell or
ganze Zahl von einem smallint Definition je nach auto_inkrement extra bisschen
Informationen von MySQL, dann müssen Sie zwei Casting-Regeln wie folgt buchstabieren:

Geben Sie smallint mit zusätzlichem auto_increment ein
zum seriellen Drop-Typmod beibehalten Standard halten nicht null,
Geben Sie smallint ein
to integer drop typemod Standard beibehalten Nicht null beibehalten

Die unterstützten Casting-Optionen sind:

· fallen lassen Standard, halten Standard

Wenn die Option fallen lassen Standard aufgelistet ist, löscht pgloader alle vorhandenen Standardausdrücke
in der MySQL-Datenbank für Spalten des Quelltyps aus dem CREATE TABELLE Aussage
es erzeugt.

Die Schreibweise halten Standard verhindert dieses Verhalten explizit und kann verwendet werden, um
die Standard-Casting-Regeln überladen.

· fallen lassen nicht null, halten nicht null

Wenn die Option fallen lassen nicht null aufgelistet ist, löscht pgloader alle vorhandenen NICHT NULL
Einschränkung, die mit dem angegebenen MySQL-Quelldatentyp verknüpft ist, wenn die Tabellen erstellt werden
in der PostgreSQL-Datenbank.

Die Schreibweise halten nicht null verhindert dieses Verhalten explizit und kann verwendet werden, um
die Standard-Casting-Regeln überladen.

· fallen lassen Typmod, halten Typmod

Wenn die Option fallen lassen Typmod aufgelistet ist, löscht pgloader alle vorhandenen Typmod Definition
(z.B Präzision und Treppe) aus der Datentypdefinition in den MySQL-Spalten von
den Quelltyp beim Erstellen der Tabellen in der PostgreSQL-Datenbank.

Die Schreibweise halten Typmod verhindert dieses Verhalten explizit und kann verwendet werden, um
die Standard-Casting-Regeln überladen.

· mit automatisierten

Diese Option nimmt als einziges Argument den Namen einer Funktion an, die im
pgloader.transformiert Gemeinsames Lisp-Paket. Details siehe oben.

Es ist möglich, eine standardmäßige Besetzungsregel zu erweitern (z. B. eine, die gegen ENUM
Datentyp zum Beispiel) mit a Transformation Funktion durch das vollständige Weglassen der tippe
Teile der Casting-Regel, wie im folgenden Beispiel:

Spalte enumerate.foo mit empty-string-to-null

· MATERIALISIEREN ANSICHTEN

Mit dieser Klausel können Sie die benutzerdefinierte Datenverarbeitung an der Datenquelle implementieren, indem Sie
Bereitstellung eines view Definition gegen welchen pgloader die Daten abfragt. Es ist nicht
möglich, nur einfach zuzulassen SQL weil wir viel über das genaue wissen wollen
Datentypen jeder Spalte, die an der Abfrageausgabe beteiligt sind.

Diese Klausel erwartet eine durch Kommas getrennte Liste von Ansichtsdefinitionen, von denen jede entweder
der Name einer vorhandenen Ansicht in Ihrer Datenbank oder der folgende Ausdruck:

Name AS $$ SQL query $$

Der Name und den SQL query wird verwendet in a CREATE ENTDECKE Aussage am Anfang von
das Laden der Daten, und die resultierende Ansicht wird dann am Ende der Daten gelöscht
Wird geladen.

· MATERIALISIEREN ALLER ANSICHTEN

Gleiches Verhalten wie MATERIALISIEREN ANSICHTEN Verwenden der dynamischen Liste der Ansichten, wie sie von . zurückgegeben wird
MySQL, anstatt den Benutzer aufzufordern, die Liste anzugeben.

· EINSCHLIESSLICH NUR TABELLE NAMEN PASSEND

Führen Sie eine durch Kommas getrennte Liste von Tabellennamen ein oder regulär Ausdruck verwendet, um zu begrenzen
die Tabellen, die in eine Unterliste migriert werden sollen.

Ejemplo:

EINSCHLIESSLICH NUR PASSENDE TISCHNAMEN ~/film/, Schauspieler

· OHNE TABELLE NAMEN PASSEND

Führen Sie eine durch Kommas getrennte Liste von Tabellennamen ein oder regulär Ausdruck verwendet, um auszuschließen
Tabellennamen aus der Migration. Dieser Filter gilt nur für das Ergebnis der
EINSCHLIESSLICH Filter.

AUSSCHLIESSLICH TABELLENNAMEN, DIE MIT ~ . PASSEN

· DEKODIEREN TABELLE NAMEN PASSEND

Führen Sie eine durch Kommas getrennte Liste von Tabellennamen ein oder regulär Ausdrücke verwendet, um zu erzwingen
die Codierung, die bei der Verarbeitung von Daten aus MySQL verwendet werden soll. Wenn Ihnen die Datenverschlüsselung bekannt ist
sich von MySQLs Vorstellung unterscheidet, ist dies die zu verwendende Option.

DEKODIEREN VON TABELLENNAMEN ÜBEREINSTIMMEN ~/durcheinander/, ~/kodieren/ ALS utf8

Sie können beliebig viele solcher Regeln verwenden, alle mit möglicherweise unterschiedlichen Codierungen.

EINSCHRÄNKUNGEN
Der Datenbank Der Befehl unterstützt derzeit nur die MySQL-Quelldatenbank und hat Folgendes:
Einschränkungen:

· Ansichten werden nicht migriert,

Die Unterstützung von Ansichten erfordert möglicherweise die Implementierung eines vollständigen SQL-Parsers für den MySQL-Dialekt
mit einer Portierungs-Engine, um die SQL gegen PostgreSQL umzuschreiben, einschließlich Umbenennung
Funktionen und das Ändern einiger Konstrukte.

Obwohl es theoretisch nicht unmöglich ist, halten Sie nicht den Atem an.

· Trigger werden nicht migriert

Die Schwierigkeit, dies zu tun, ist noch nicht bewertet.

· ON AKTUALISIEREN AKTUELLER ZEITSTEMPEL wird derzeit nicht migriert

Es ist einfach zu implementieren, nur noch nicht auf der Prioritätenliste.

· Von den geometrischen Datentypen sind nur die POINT Datenbank abgedeckt ist. Die Anderen
sollte jetzt einfach zu implementieren sein, es ist nur noch nicht fertig.

DEFAULT MySQL CASTING REGELN
Bei der Migration von MySQL werden die folgenden Casting-Regeln bereitgestellt:

Zahlen:

· Geben Sie int mit zusätzlichem auto_increment in serial ein, wenn (< Präzision 10)

· geben Sie int mit extra auto_increment in bigserial ein, wenn (<= 10 precision)

· Geben Sie int int ein, wenn (< Präzision 10)

· Geben Sie int in bigint ein, wenn (<= 10 Precision)

· tippe tinyint mit extra auto_increment zu serial

· Geben Sie smallint mit zusätzlichem auto_increment in serial ein

· geben Sie mediumint mit zusätzlichem auto_increment zu serial ein

· geben Sie bigint mit zusätzlichem auto_increment zu bigserial ein

· Geben Sie tinyint in boolean ein, wenn (= 1 Genauigkeit) mit tinyint-to-boolean

· tippe tinyint zu smallint drop typemod

· schreiben smallint to smallint drop typemod

· Geben Sie mediumint bis integer drop typemod . ein

· Geben Sie Integer in Integer ein, drop typemod

· Typ float to float drop typemod

· tippe bigint zu bigint drop typemod

· Typ mit doppelter bis doppelter Präzision Drop typemod

· numerisch eingeben, um numerisch zu behalten typemod

· Geben Sie Dezimal zu Dezimal ein, behalten Sie typemod

Texte:

· Geben Sie char ein, um varchar zu behalten typemod

· varchar in Text eingeben

· tippe tinytext in text ein

· Text zu Text eingeben

· Geben Sie Mediumtext in Text ein

· Langtext in Text eingeben

Binär:

· tippe binär in bytea

· varbinary in bytea . eingeben

· tippe tinyblob in bytea

· tippe blob in bytea

· tippe mediumblob in bytea

· tippe longblob in bytea

Datum:

· Geben Sie datetime ein, wenn der Standardwert "0000-00-00 00:00:00" und nicht null ist, um den Zeitstempel nicht zu löschen
Null-Drop-Standard mit Zero-dates-to-null

· Geben Sie datetime ein, wenn die Standardeinstellung "0000-00-00 00:00:00" ist, um die Standardeinstellung mit Zeitstempel zu löschen
Null-Daten-zu-Null

· Geben Sie den Zeitstempel ein, wenn der Standardwert "0000-00-00 00:00:00" und nicht null ist, um den Zeitstempel zu löschen
Null-Drop-Standard mit Zero-dates-to-null

· Geben Sie den Zeitstempel ein, wenn der Standardwert "0000-00-00 00:00:00" ist, um den Zeitstempel zu löschen, indem Sie den Standard verwenden
Null-Daten-zu-Null

· Geben Sie das Datum ein, wenn der Standardwert "0000-00-00" ist, um den Standardwert mit Zero-dates-to-null zu löschen

· Datum bis Datum eingeben

· datetime in timestamptz eingeben

· geben Sie timestamp in timestamptz . ein

· Geben Sie Jahr in ganze Zahl ein, drop typemod

Geometrisch:

· Punkt-zu-Punkt-Eingabe mit pgloader.transforms::convert-mysql-point

Enum-Typen werden in MySQL inline und separat mit a . deklariert CREATE TYP Befehl in
PostgreSQL, also wird jede Spalte des Enum-Typs in einen Typ konvertiert, der nach der Tabelle benannt ist und
Spaltennamen mit denselben Beschriftungen in derselben Reihenfolge definiert.

Wenn die Quelltypdefinition weder in den Standardumwandlungsregeln noch in der
im Befehl angegebenen Casting-Regeln, dann wird der Typname mit dem typemod verwendet.

BELASTUNG SQLite DATABASE


Dieser Befehl weist pgloader an, Daten aus einer SQLite-Datei zu laden. Automatische Erkennung von
das Schema wird unterstützt, einschließlich der Erstellung der Indizes.

Hier ist ein Beispiel:

Datenbank laden
von sqlite:///Users/dim/Downloads/lastfm_tags.db
in postgresql:///tags

mit include drop, Tabellen erstellen, Indizes erstellen, Sequenzen zurücksetzen

setze work_mem auf ´16MB´, maintenance_work_mem auf ´512 MB´;

Der SQLite Befehl akzeptiert die folgenden Klauseln und Optionen:

· AB

Pfad oder HTTP-URL zu einer SQLite-Datei, möglicherweise a .zip Datei.

· MIT

Beim Laden von a SQLite Datenbank werden die folgenden Optionen unterstützt:

Beim Laden von a SQLite Datenbank werden die folgenden Optionen unterstützt, und die
Standard MIT Klausel lautet: nicht abschneiden, erstellen Tabellen, das fallen lassen, erstellen Indizes,
zurückstellen Sequenzen, Koffer Identifikatoren, Codierung „utf-8“..

· das fallen lassen

Wenn diese Option aufgeführt ist, löscht pgloader alle Tabellen im Ziel-PostgreSQL
Datenbank, deren Namen in der SQLite-Datenbank erscheinen. Diese Option ermöglicht die Verwendung der
Derselbe Befehl mehrmals hintereinander, bis Sie alle Optionen herausgefunden haben, beginnend
automatisch aus einer sauberen Umgebung. Bitte beachte, dass CASCADE wird verwendet, um sicherzustellen
dass Tabellen gelöscht werden, selbst wenn Fremdschlüssel auf sie verweisen. Das ist
genau was das fallen lassen soll tun: alle Zieltabellen löschen und neu erstellen
Them.

Bei der Verwendung ist große Vorsicht geboten das fallen lassen, da es zu kaskadieren wird alle
Objekte, die auf die Zieltabellen verweisen, möglicherweise auch andere Tabellen, die nicht
aus dem Quell-DB geladen wird.

· das nicht fallen lassen

Wenn diese Option aufgeführt ist, enthält pgloader keine DROP Aussage beim Laden
die Daten.

· abschneiden

Wenn diese Option aufgeführt ist, gibt pgloader die KÜRZEN Befehl gegen jeden
PostgreSQL-Tabelle kurz vor dem Laden von Daten.

· nicht abschneiden

Wenn diese Option aufgeführt ist, gibt pgloader keine KÜRZEN Befehl.

· deaktivieren löst

Wenn diese Option aufgeführt ist, gibt pgloader eine ALTER TABELLE ... DEAKTIVIEREN TRIGGER ALLER
Befehl gegen die PostgreSQL-Zieltabelle, bevor Sie die Daten kopieren, dann der Befehl
ALTER TABELLE ... AKTIVIEREN TRIGGER ALLER einmal der COPY erledigt.

Diese Option ermöglicht das Laden von Daten in eine bereits vorhandene Tabelle ohne Berücksichtigung der fremd Haupt
Einschränkungen und benutzerdefinierten Triggern und können zu ungültigen fremd Haupt
Einschränkungen sobald die Daten geladen sind. Mit Vorsicht verwenden.

· erstellen Tabellen

Wenn diese Option aufgeführt ist, erstellt pgloader die Tabelle mit den Metadaten in
SQLite Datei, die eine Liste von Feldern mit ihrem Datentyp enthalten muss. Ein Standard
Die Datentypkonvertierung von DBF nach PostgreSQL ist abgeschlossen.

· erstellen nicht Tabellen

Wenn diese Option aufgeführt ist, überspringt pgloader die Tabellenerstellung vor dem Laden von Daten.
Zieltabellen müssen dann bereits vorhanden sein.

· erstellen Indizes

Wenn diese Option aufgeführt ist, ruft pgloader die Definitionen aller gefundenen Indizes ab
die SQLite-Datenbank und erstellen Sie denselben Satz von Indexdefinitionen gegen die
PostgreSQL-Datenbank.

· erstellen nicht Indizes

Wenn diese Option aufgeführt ist, überspringt pgloader das Erstellen von Indizes.

· zurückstellen Sequenzen

Wenn diese Option aufgeführt ist, am Ende des Datenladens und nachdem die Indizes
alle erstellt wurden, setzt pgloader alle erstellten PostgreSQL-Sequenzen auf den aktuellen zurück
Maximalwert der Spalte, an die sie angehängt sind.

· zurückstellen nicht Sequenzen

Wenn diese Option aufgeführt ist, überspringt pgloader die Rücksetzsequenzen nach dem Laden.

Die Optionen Schema einzige und die Datenerfassung einzige haben keine Auswirkungen auf diese Option.

· Schema einzige

Wenn diese Option aufgeführt ist, wird pgloader die Migration der Daten unterlassen. Notiz
dass das Schema in diesem Kontext die Indizes enthält, wenn die Option erstellen Indizes
aufgeführt wurde.

· die Datenerfassung einzige

Wenn diese Option aufgeführt ist, gibt pgloader nur die COPY Aussagen, ohne etwas zu tun
andere Verarbeitung.

· Codierung

Mit dieser Option können Sie steuern, mit welcher Codierung die SQLite-Textdaten geparst werden sollen.
Standardmäßig ist UTF-8.

· CAST

Die cast-Klausel ermöglicht es, benutzerdefinierte Casting-Regeln anzugeben, um entweder den Standard zu überladen
Besetzungsregeln oder bei Sonderfällen zu ergänzen.

Weitere Informationen finden Sie in der MySQL CAST-Klausel.

· EINSCHLIESSLICH NUR TABELLE NAMEN PASSEND

Führen Sie eine durch Kommas getrennte Liste von Tabellennamen ein oder regulär Ausdruck verwendet, um zu begrenzen
die Tabellen, die in eine Unterliste migriert werden sollen.

Ejemplo:

EINSCHLIESSLICH NUR PASSENDE TISCHNAMEN ~/film/, Schauspieler

· OHNE TABELLE NAMEN PASSEND

Führen Sie eine durch Kommas getrennte Liste von Tabellennamen ein oder regulär Ausdruck verwendet, um auszuschließen
Tabellennamen aus der Migration. Dieser Filter gilt nur für das Ergebnis der
EINSCHLIESSLICH Filter.

AUSSCHLIESSLICH TABELLENNAMEN, DIE MIT ~ . PASSEN

DEFAULT SQLite CASTING REGELN
Bei der Migration von SQLite werden die folgenden Umwandlungsregeln bereitgestellt:

Zahlen:

· tippe tinyint zu smallint

· Geben Sie Integer in Bigint ein

· Typ float to float mit float-to-string

· Geben Sie real in real ein, indem Sie float-to-string verwenden

· Geben Sie doppelte bis doppelte Genauigkeit ein, indem Sie Float-to-String verwenden

· Geben Sie numerisch in numerisch ein, indem Sie float-to-string verwenden

Texte:

· Geben Sie das Zeichen ein, um den Typmod in Text zu fallen

· Geben Sie varchar ein, um typemod . zu schreiben

· Geben Sie nvarchar ein, um typemod . zu schreiben

· Geben Sie char ein, um typemod . zu schreiben

· Geben Sie nchar ein, um typemod . zu schreiben

· Geben Sie nvarchar ein, um typemod . zu schreiben

· Geben Sie clob ein, um typemod . zu schreiben

Binär:

· tippe blob in bytea

Datum:

· Geben Sie datetime in timestamptz mit sqlite-timestamp-to-timestamp ein

· Geben Sie timestamp in timestamptz ein, indem Sie sqlite-timestamp-to-timestamp verwenden

· Geben Sie timestamptz in timestamptz ein, indem Sie sqlite-timestamp-to-timestamp verwenden

BELASTUNG MS SQL DATABASE


Dieser Befehl weist pgloader an, Daten aus einer MS SQL-Datenbank zu laden. Automatische Erkennung
des Schemas wird unterstützt, einschließlich Erstellung der Indizes, Primär- und Fremdschlüssel
Einschränkungen.

Hier ist ein Beispiel:

Datenbank laden
von mssql://user@host/dbname
in postgresql:///dbname

enthält nur Tabellennamen wie ´GlobalAccount´ im Schema ´dbo´

setze work_mem auf ´16MB´, maintenance_work_mem auf ´512 MB´

vor dem Laden $$ Schema löschen, falls vorhanden dbo cascade; $$;

Der Mssql Befehl akzeptiert die folgenden Klauseln und Optionen:

· AB

Verbindungszeichenfolge zu einem vorhandenen MS SQL-Datenbankserver, der zuhört und begrüßt
externe TCP/IP-Verbindung. Da pgloader derzeit den FreeTDS-Treiber nutzt, um
ändere den Port des Servers bitte exportiere die TDSPORT variable Umgebung

· MIT

Beim Laden von a MS SQL Datenbank, die gleichen Optionen wie beim Laden von a MySQL Datenbank
sind unterstützt. Bitte lesen Sie den Abschnitt MySQL. Die folgenden Optionen werden hinzugefügt:

· erstellen Schemata

Wenn diese Option aufgeführt ist, erstellt pgloader die gleichen Schemas wie auf der MS SQL
Beispiel. Dies ist die Standardeinstellung.

· erstellen nicht Schemata

Wenn diese Option aufgeführt ist, verzichtet pgloader darauf, überhaupt Schemas zu erstellen
muss dann sicherstellen, dass das Zielschema vorhanden ist.

· CAST

Die cast-Klausel ermöglicht es, benutzerdefinierte Casting-Regeln anzugeben, um entweder den Standard zu überladen
Besetzungsregeln oder bei Sonderfällen zu ergänzen.

Weitere Informationen finden Sie in der MySQL CAST-Klausel.

· EINSCHLIESSLICH NUR TABELLE NAMEN LIKE ´...´ [, ´...´] IN ZEITPLAN ´...´

Führen Sie eine durch Kommas getrennte Liste von Tabellennamensmustern ein, die verwendet werden, um die Tabellen auf zu beschränken
in eine Unterliste migrieren. Es können mehrere solcher Klauseln verwendet werden, sie werden akkumuliert
together.

Ejemplo:

nur die Tabellennamen ´GlobalAccount´ im Schema ´dbo´ . enthalten

· OHNE TABELLE NAMEN LIKE ´...´ [, ´...´] IN ZEITPLAN ´...´

Führen Sie eine durch Kommas getrennte Liste von Tabellennamenmustern ein, die verwendet werden, um Tabellennamen auszuschließen
von der Auswanderung. Dieser Filter gilt nur für das Ergebnis der EINSCHLIESSLICH Filter.

AUSSCHLIESSLICH TABELLENNAMEN, DIE ´LocalAccount´ im Schema ´dbo´ . PASSEN

DEFAULT MS SQL CASTING REGELN
Bei der Migration von MS SQL werden die folgenden Casting-Regeln bereitgestellt:

Zahlen:

· tippe tinyint zu smallint

· Typ float to float mit float-to-string

· Geben Sie real in real ein, indem Sie float-to-string verwenden

· Geben Sie doppelte bis doppelte Genauigkeit ein, indem Sie Float-to-String verwenden

· Geben Sie numerisch in numerisch ein, indem Sie float-to-string verwenden

· Geben Sie dezimal in numerisch ein, indem Sie float-to-string verwenden

· Geben Sie Geld in Zahlen ein, indem Sie Float-to-String verwenden

· Geben Sie smallmoney in numerisch ein, indem Sie float-to-string verwenden

Texte:

· Geben Sie char ein, um typemod . zu schreiben

· Geben Sie nchat ein, um typemod . zu schreiben

· Geben Sie varchar ein, um typemod . zu schreiben

· Geben Sie nvarchar ein, um typemod . zu schreiben

· geben Sie xml ein, um den Typmod zum Text-Drop einzugeben

Binär:

· geben Sie binär in bytea ein, indem Sie byte-vector-to-bytea verwenden

· varbinary in bytea eintippen mit byte-vector-to-bytea

Datum:

· datetime in timestamptz eingeben

· datetime2 in timestamptz eingeben

Andere:

· bit zu boolesch eingeben

· Geben Sie hierarchieid in bytea ein

· Geographie in bytea . eingeben

· Geben Sie uniqueidentifier in uuid ein, indem Sie sql-server-uniqueidentifier-to-uuid verwenden

TRANSFORMATION FUNKTIONEN


Einige Datentypen werden so unterschiedlich implementiert, dass eine Transformationsfunktion
ist notwendig. Diese Funktion muss geschrieben werden in gemeinsam lispeln und wird in der gesucht
pgloader.transformiert Paket.

Einige Standard-Transformationsfunktionen werden mit pgloader bereitgestellt, und Sie können die
--Belastung Befehlszeilenoption zum Laden und Kompilieren Ihrer eigenen Lisp-Datei in pgloader at
Laufzeit. Damit Ihre Funktionen gefunden werden, denken Sie daran, Ihre Lisp-Datei mit dem zu beginnen
folgendes Formular:

(in-Paket #:pgloader.transforms)

Die bereitgestellten Transformationsfunktionen sind:

· Null-Daten-zu-Null

Wenn das Eingabedatum nur Nullen enthält, geben Sie zurück Null, die als PostgreSQL geladen wird NULL
Wert.

· Datum-ohne-Trennzeichen

Gilt Null-Daten-zu-Null wandeln Sie dann das angegebene Datum in ein Format um, das PostgreSQL
wird tatsächlich verarbeiten:

In: "20041002152952"
Out: "2004-10-02 15:29:52"

· Zeit-ohne-Trennzeichen

Wandeln Sie die angegebene Zeit in ein Format um, das PostgreSQL tatsächlich verarbeitet:

In: "08231560"
Aus: "08:23:15.60"

· Tinyint-to-Boolean

Da MySQL keinen richtigen booleschen Typ hat, Tinyint wird oft verwendet, um dies zu implementieren. Dies
Funktion transformiert 0 zu falsch und alles andere zu wahr‘.

· Bits-zu-Boolean

Da MySQL keinen richtigen booleschen Typ hat, BIT wird oft verwendet, um dies zu implementieren. Dies
Funktion transformiert 1-Bit-Bit-Vektoren von 0 zu f und jeder andere Wert zu t..

· int-to-ip

Wandeln Sie eine ganze Zahl in eine gepunktete Darstellung eines IP4 um.

In: 18435761
Aus: "1.25.78.177"

· IP-Bereich

Konvertiert einige als Strings angegebene Ganzzahlen in einen IP4-Bereich.

In: "16825344" "16825599"
Aus: "1.0.188.0-1.0.188.255"

· konvertieren-mysql-point

Konvertiert aus dem astext Darstellung von Punkten in MySQL zum PostgreSQL
Darstellung.

In: "PUNKT(48.5513589 7.6926827)"
Aus: "(48.5513589,7.6926827)"

· Float-to-String

Konvertiert einen Common Lisp-Float in einen String, der für einen PostgreSQL-Float geeignet ist:

In: 100.0d0
Aus: "100.0"

· set-to-enum-array

Konvertiert einen String, der ein MySQL SET darstellt, in ein PostgreSQL-Array von Enum-Werten von
der Satz.

In: "foo,bar"
Aus: "{foo,bar}"

· leerer-string-to-null

Wandeln Sie eine leere Zeichenfolge in eine Null um.

· rechts trimmen

Leerzeichen am Ende der Zeichenfolge entfernen.

· Byte-Vektor-zu-Bytea

Transformieren Sie ein einfaches Array von unsignierten Bytes in das PostgreSQL-Bytea-Hex-Format
Darstellung wie dokumentiert bei
http://www.postgresql.org/docs/9.3/interactive/datatype-binary.html

· sqlite-timestamp-to-timestamp

Das SQLite-Typsystem ist ziemlich interessant, also kommen Sie hier damit zurecht, um einen Zeitstempel zu erzeugen
Literale wie von PostgreSQL erwartet. Das deckt das Jahr nur an 4 Stellen ab, 0 Daten bis
null und richtige Datumszeichenfolgen.

· sql-server-uniqueidentifier-to-uuid

Der SQL Server-Treiber empfängt Daten vom Typ uniqueidentifier als Bytevektor, den wir
müssen dann in einen UUID-String konvertiert werden, damit das PostgreSQL COPY-Eingabeformat verarbeitet werden kann.

· Unix-Zeitstempel-zu-Zeitstempel

Konvertiert einen Unix-Zeitstempel (Anzahl der seit Anfang 1970 verstrichenen Sekunden) in a
richtiges PostgreSQL-Zeitstempelformat.

BELASTUNG MITTEILUNGEN


Dieser Befehl ist noch experimentell und ermöglicht den Empfang von Nachrichten über UDP mit einem Syslog
wie das Format und lädt, je nach Regelübereinstimmung, benannte Teile des Datenstroms in
eine Zieltabelle.

NACHRICHTEN LADEN
VON syslog://localhost:10514/

WENN PASST rsyslog-msg IN Apache
REGISTRIERUNG Zeitstempel, IP, Rest
IN postgresql://localhost/db?logs.apache
SET guc_1 = ´Wert´, guc_2 = ´anderer Wert´

WANN PASST rsyslog-msg IN anderen
REGISTRIERUNG Zeitstempel, App-Name, Daten
IN postgresql://localhost/db?logs.others
SET guc_1 = ´Wert´, guc_2 = ´anderer Wert´

MIT Apache = rsyslog
DATEN = IP-REST
IP = 1*3DIGIT "." 1*3DIGIT "."1*3DIGIT "."1*3DIGIT
RUHE = ~ /.*/

MIT anderen = rsyslog;

Da der Befehl noch experimentell ist, können die Optionen in Zukunft geändert werden und die
Details sind nicht dokumentiert.

Verwenden Sie pgloader online mit den onworks.net-Diensten


Kostenlose Server & Workstations

Laden Sie Windows- und Linux-Apps herunter

Linux-Befehle

Ad




×
Werbung
❤ ️Hier einkaufen, buchen oder kaufen – kostenlos, damit die Dienste kostenlos bleiben.