Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Speichern von Daten aus einem Amazon Aurora My SQL DB-Cluster in Textdateien in einem Amazon S3 S3-Bucket
Sie können die SELECT INTO OUTFILE S3
Anweisung verwenden, um Daten aus einem Amazon Aurora My SQL DB-Cluster abzufragen und sie in Textdateien zu speichern, die in einem Amazon S3 S3-Bucket gespeichert sind. In Aurora My SQL werden die Dateien zuerst auf der lokalen Festplatte gespeichert und dann nach S3 exportiert. Nach Abschluss der Exporte werden die lokalen Dateien gelöscht.
Sie können den Amazon S3-Bucket mit einem von Amazon S3 verwalteten Schlüssel (SSE-S3) oder AWS KMS key (SSE-KMS: Von AWS verwalteter Schlüssel oder vom Kunden verwalteten Schlüssel) verschlüsseln.
Die LOAD DATA FROM S3
Anweisung kann Dateien verwenden, die durch die SELECT INTO
OUTFILE S3
Anweisung erstellt wurden, um Daten in einen Aurora-DB-Cluster zu laden. Weitere Informationen finden Sie unter Daten aus Textdateien in einem Amazon S3-Bucket in einen Amazon Aurora My SQL DB-Cluster laden.
Anmerkung
Diese Funktion wird für DB-Cluster von Aurora Serverless v1 nicht unterstützt. Sie wird für DB-Cluster von Aurora Serverless v2 unterstützt.
Sie können DB-Cluster-Daten und DB-Cluster-Snapshot-Daten auch mit Amazon AWS Management Console AWS CLI, oder Amazon in Amazon S3 speichern RDSAPI. Weitere Informationen erhalten Sie unter Exportieren von DB-Cluster-Daten nach Amazon S3 und Exportieren von DB-Cluster-Snapshot-Daten nach Amazon S3.
Inhalt
Aurora My SQL Zugriff auf Amazon S3 gewähren
Bevor Sie Daten in einem Amazon S3-Bucket speichern können, müssen Sie Ihrem Aurora My SQL DB-Cluster zunächst die Erlaubnis erteilen, auf Amazon S3 zuzugreifen.
Um Aurora My SQL Zugriff auf Amazon S3 zu gewähren
-
Erstellen Sie eine AWS Identity and Access Management (IAM) -Richtlinie, die die Bucket- und Objektberechtigungen bereitstellt, die Ihrem Aurora My SQL DB-Cluster den Zugriff auf Amazon S3 ermöglichen. Detaillierte Anweisungen finden Sie unter Eine IAM Richtlinie für den Zugriff auf Amazon S3 S3-Ressourcen erstellen.
Anmerkung
In Aurora My SQL Version 3.05 und höher können Sie Objekte mit vom AWS KMS Kunden verwalteten Schlüsseln verschlüsseln. Nehmen Sie dazu die
kms:GenerateDataKey
Erlaubnis in Ihre IAM Richtlinie auf. Weitere Informationen finden Sie unter Erstellen einer IAM-Zugriffsrichtlinie für AWS KMS-Ressourcen.Sie benötigen diese Berechtigung nicht, um Objekte mithilfe Von AWS verwaltete Schlüssel von Amazon S3 S3-verwalteten Schlüsseln (SSE-S3) zu verschlüsseln.
-
Erstellen Sie eine IAM Rolle und fügen Sie die IAM Richtlinie, die Sie erstellt habenEine IAM Richtlinie für den Zugriff auf Amazon S3 S3-Ressourcen erstellen, der neuen IAM Rolle hinzu. Detaillierte Anweisungen finden Sie unter Erstellen einer IAM-Rolle, um Amazon Aurora den Zugriff auf AWS-Services zu erlauben.
-
Setzen Sie für Aurora My SQL Version 2 entweder den
aws_default_s3_role
DB-Cluster-Parameteraurora_select_into_s3_role
oder auf den Amazon-Ressourcennamen (ARN) der neuen IAM Rolle. Wenn keine IAM Rolle für angegeben istaurora_select_into_s3_role
, verwendet Aurora die IAM unter angegebene Rolleaws_default_s3_role
.Verwenden
aws_default_s3_role
Sie für Aurora My SQL Version 3.Wenn das Cluster Teil einer globalen Aurora-Datenbank ist, legen Sie diesen Parameter für jedes Aurora-Cluster in der globalen Datenbank fest.
Weitere Informationen zu DB-Cluster-Parametern finden Sie unter Amazon Aurora-DB-Cluster und DB-Instance-Parameter.
-
Um Datenbankbenutzern in einem Aurora My SQL DB-Cluster den Zugriff auf Amazon S3 zu ermöglichen, ordnen Sie die Rolle, die Sie erstellt haben, Erstellen einer IAM-Rolle, um Amazon Aurora den Zugriff auf AWS-Services zu erlauben dem DB-Cluster zu.
Bei einer globalen Aurora-Datenbank verknüpfen Sie die Rolle mit jedem Aurora-Cluster in der globalen Datenbank.
Informationen zur Zuordnung einer IAM Rolle zu einem DB-Cluster finden Sie unterZuweisen einer IAM-Rolle zu einem Amazon-Aurora-MySQL-DB-Cluster.
-
Konfigurieren Sie Ihren Aurora My SQL DB-Cluster so, dass ausgehende Verbindungen zu Amazon S3 zugelassen werden. Detaillierte Anweisungen finden Sie unter Aktivierung der Netzwerkkommunikation von Amazon Aurora zu anderen AWS Diensten.
Bei einer globalen Aurora-Datenbank aktivieren Sie ausgehende Verbindungen für jeden Aurora-Cluster in der globalen Datenbank.
Erteilen von Rechten zum Speichern von Daten in Aurora My SQL
Der Datenbankbenutzer, der die SELECT INTO OUTFILE S3
-Anweisung ausgibt, muss über eine bestimmte Rolle oder Berechtigung verfügen. In Aurora My SQL Version 3 gewähren Sie die AWS_SELECT_S3_ACCESS
Rolle. In Aurora My SQL Version 2 gewähren Sie das SELECT
INTO S3
Privileg. Dem Administratorbenutzer für ein DB-Cluster wird die entsprechende Rolle oder -Berechtigung standardmäßig gewährt. Sie können die Berechtigung einem anderen Benutzer erteilen, indem Sie eine der folgenden Anweisungen verwenden.
Verwenden Sie die folgende Anweisung für Aurora My SQL Version 3:
GRANT AWS_SELECT_S3_ACCESS TO '
user
'@'domain-or-ip-address
'
Tipp
Wenn Sie die Rollentechnik in Aurora My SQL Version 3 verwenden, können Sie die Rolle auch mithilfe der SET ROLE
ALL
Anweisung SET ROLE
or aktivieren. Wenn Sie mit dem My SQL 8.0-Rollensystem nicht vertraut sind, finden Sie weitere Informationen unterRollenbasiertes Berechtigungsmodell. Weitere Informationen finden Sie unter Rollen verwendenrole_name
Dies gilt nur für die aktuelle aktive Sitzung. Wenn Sie die Verbindung wieder herstellen, müssen Sie die SET ROLE
Anweisung erneut ausführen, um Rechte zu gewähren. Weitere Informationen finden Sie in der SETROLEErklärung
Sie können den DB-Cluster-Parameter activate_all_roles_on_login
zum automatischen Aktivieren aller Rollen verwenden, wenn ein Benutzer eine Verbindung mit einer DB-Instance herstellt. Wenn dieser Parameter gesetzt ist, müssen Sie die SET ROLE
Anweisung im Allgemeinen nicht explizit aufrufen, um eine Rolle zu aktivieren. Weitere Informationen finden Sie unter activate_all_roles_on_login im My Reference
Sie müssen jedoch zu Beginn einer gespeicherten Prozedur SET ROLE ALL
explizit aufrufen, um die Rolle zu aktivieren, wenn die gespeicherte Prozedur von einem anderen Benutzer aufgerufen wird.
Verwenden Sie die folgende Anweisung für Aurora My SQL Version 2:
GRANT SELECT INTO S3 ON *.* TO '
user
'@'domain-or-ip-address
'
Die AWS_SELECT_S3_ACCESS
Rolle und die SELECT INTO S3
Berechtigung sind spezifisch für Amazon Aurora My SQL und sind nicht für Meine SQL Datenbanken oder RDS für Meine SQL DB-Instances verfügbar. Wenn Sie die Replikation zwischen einem Aurora My SQL DB-Cluster als Replikationsquelle und einer My SQL Database als Replikationsclient eingerichtet haben, führt die GRANT
Anweisung für die Rolle oder das Privileg dazu, dass die Replikation mit einem Fehler beendet wird. Sie können diese Fehlermeldung ignorieren und mit der Replikation fortfahren. Verwenden Sie die Prozedur mysql_rds_skip_repl_error, um den Fehler in einer RDS for My SQL DB-Instance zu überspringen. Um den Fehler in einer externen My SQL database zu überspringen, verwenden Sie die Systemvariable slave_skip_errors
Angeben eines Pfades zu einem Amazon S3-Bucket
Die Syntax für das Bestimmen eines Pfades zu einem Speicherort für Daten und Manifestdateien in einem Amazon S3-Bucket ist ähnlich der in der Anweisung LOAD DATA FROM S3 PREFIX
, wie im Folgenden zu sehen ist.
s3
-region
://bucket-name
/file-prefix
Der Pfad enthält die folgenden Werte:
-
region
(optional) — Die AWS Region, die den Amazon S3 S3-Bucket enthält, in dem die Daten gespeichert werden sollen. Dieser Wert ist optional. Wenn Sie keinenregion
-Wert festlegen, speichert Aurora Ihre Datei in Amazon S3, das sich in derselben Region befindet wie Ihr DB-Cluster. -
bucket-name
– Der Name des Amazon S3-Buckets, in dem die Daten gespeichert werden sollen. Objekt-Präfixe, die einen virtuellen Ordnerpfad identifizieren, werden unterstützt. -
file-prefix
– Das Amazon S3-Objektpräfix, das die Dateien identifiziert, die in Amazon S3 gespeichert werden sollen.
Die durch die SELECT INTO OUTFILE S3
Anweisung erstellten Datendateien verwenden den folgenden Pfad, in dem 00000
steht für eine fünfstellige Ganzzahl, die auf Null basiert.
s3
-region
://bucket-name
/file-prefix
.part_00000
Nehmen wir beispielsweise an, dass ein Statement SELECT INTO OUTFILE S3
s3-us-west-2://bucket/prefix
als den Pfad festlegt, in dem Dateien gespeichert und drei Datendateien erstellt werden sollen. Das festgelegte Amazon S3-Bucket beinhaltet die folgenden Dateien.
-
s3-us-west-2://bucket/prefix.part 00000
-
s3-us-west-2://bucket/prefix.part 00001
-
s3-us-west-2://bucket/prefix.part 00002
Erstellen eines Manifests für das Auflisten von Dateien
Sie können die SELECT INTO OUTFILE S3
Anweisung mit der MANIFEST ON
Option verwenden, um eine Manifestdatei in einem JSON Format zu erstellen, das die durch die Anweisung erstellten Textdateien auflistet. Die LOAD DATA FROM S3
Anweisung kann die Manifestdatei verwenden, um die Datendateien wieder in einen Aurora My SQL DB-Cluster zu laden. Weitere Informationen zur Verwendung eines Manifests zum Laden von Datendateien aus Amazon S3 in einen Aurora My SQL DB-Cluster finden Sie unterVerwenden eines Manifests für zu ladende Dateien.
Die im Manifest beinhalteten Dateien, die mithilfe des Statements SELECT INTO OUTFILE
S3
erstellt wurden, werden in der Reihenfolge gelistet, in der sie mit dem Statement erstellt wurden. Nehmen wir beispielsweise an, dass ein Statement SELECT INTO OUTFILE S3
s3-us-west-2://bucket/prefix
als den Pfad angegeben hat, in dem Dateien gespeichert und drei Dateien und eine Manifestdatei erstellt werden sollen. Der angegebene Amazon S3-Bucket beinhaltet eine Manifestdatei mit dem Namen s3-us-west-2://bucket/prefix.manifest
, die die folgenden Informationen beinhaltet.
{ "entries": [ { "url":"s3-us-west-2://bucket/prefix.part_00000" }, { "url":"s3-us-west-2://bucket/prefix.part_00001" }, { "url":"s3-us-west-2://bucket/prefix.part_00002" } ] }
SELECTINTOOUTFILES3
Sie können die Anweisung SELECT INTO OUTFILE S3
verwenden, um Daten aus einem DB-Cluster abzufragen und diese direkt in separierten Textdateien in einem Amazon S3-Bucket zu speichern.
Komprimierte Dateien werden nicht unterstützt. Verschlüsselte Dateien werden ab Aurora My SQL Version 2.09.0 unterstützt.
Syntax
SELECT [ALL | DISTINCT | DISTINCTROW ] [HIGH_PRIORITY] [STRAIGHT_JOIN] [SQL_SMALL_RESULT] [SQL_BIG_RESULT] [SQL_BUFFER_RESULT] [SQL_CACHE | SQL_NO_CACHE] [SQL_CALC_FOUND_ROWS]
select_expr
[,select_expr
...] [FROMtable_references
[PARTITIONpartition_list
] [WHEREwhere_condition
] [GROUP BY {col_name
|expr
|position
} [ASC | DESC], ... [WITH ROLLUP]] [HAVINGwhere_condition
] [ORDER BY {col_name
|expr
|position
} [ASC | DESC], ...] [LIMIT {[offset
,]row_count
|row_count
OFFSEToffset
}] INTO OUTFILE S3 's3_uri
' [CHARACTER SETcharset_name
] [export_options
] [MANIFEST {ON | OFF}] [OVERWRITE {ON | OFF}] [ENCRYPTION {ON | OFF | SSE_S3 | SSE_KMS ['cmk_id
']}]export_options
: [FORMAT {CSV|TEXT} [HEADER]] [{FIELDS | COLUMNS} [TERMINATED BY 'string
'] [[OPTIONALLY] ENCLOSED BY 'char
'] [ESCAPED BY 'char
'] ] [LINES [STARTING BY 'string
'] [TERMINATED BY 'string
'] ]
Parameter
Die Anweisung SELECT INTO OUTFILE S3
verwendet die folgenden erforderlichen und optionalen Parameter, die für Aurora spezifisch sind.
- s3-uri
-
Gibt das URI für ein Amazon S3 S3-Präfix zu verwendende Präfix an. Verwenden Sie die unter Angeben eines Pfades zu einem Amazon S3-Bucket beschriebene Syntax.
- FORMAT {CSV|TEXT} [HEADER]
-
Speichert die Daten optional im CSV Format.
Die
TEXT
Option ist die Standardoption und erzeugt das bestehende SQL Exportformat Mein Export.Die Option
CSV
erzeugt kommagetrennte Datenwerte. Das CSV Format folgt der Spezifikation in RFC-4180. Wenn Sie das optionale Schlüsselwort HEADER
angeben, enthält die Ausgabedatei eine Kopfzeile. Die Beschriftungen in der Kopfzeile entsprechen den Spaltennamen aus derSELECT
-Anweisung. Sie können die CSV Dateien zum Trainieren von Datenmodellen für die Verwendung mit AWS ML-Diensten verwenden. Weitere Informationen zur Verwendung exportierter Aurora-Daten mit AWS ML-Diensten finden Sie unterExportieren von Daten nach Amazon S3 für das SageMaker KI-Modelltraining (Fortgeschritten). - MANIFEST{AM |OFF}
-
Gibt an, ob eine Manifestdatei in Amazon S3 erstellt wird. Die Manifestdatei ist eine JavaScript Object Notation (JSON) -Datei, die verwendet werden kann, um Daten mit der
LOAD DATA FROM S3 MANIFEST
Anweisung in einen Aurora-DB-Cluster zu laden. Mehr überLOAD DATA FROM S3 MANIFEST
erfahren Sie unter Daten aus Textdateien in einem Amazon S3-Bucket in einen Amazon Aurora My SQL DB-Cluster laden.Wenn
MANIFEST ON
in der Abfrage angegeben ist, wird die Manifestdatei in Amazon S3 erstellt, nachdem alle Dateien erstellt und hochgeladen wurden. Die Manifestdatei wird unter Verwendung des folgenden Pfads erstellt:s3
-region
://bucket-name
/file-prefix
.manifestWeitere Informationen über das Format der Inhalte der Manifestdatei finden Sie unter Erstellen eines Manifests für das Auflisten von Dateien.
- OVERWRITE{ON |OFF}
-
Gibt an, ob bestehende Dateien im angegebenen Amazon-S3-Bucket überschrieben werden. Falls
OVERWRITE ON
angegeben, werden bestehende Dateien, die dem Dateipräfix in der URI angegebenen Datei entsprechen, überschrieben.s3-uri
Andernfalls tritt ein Fehler auf. - ENCRYPTION{AM | OFF | SSE _S3 | SSE _ KMS ['
cmk_id
']} -
Gibt an, ob serverseitige Verschlüsselung mit von Amazon S3 verwalteten Schlüsseln (SSE-S3) oder AWS KMS keys (SSE-KMS, einschließlich Von AWS verwaltete Schlüssel und kundenverwalteten Schlüsseln) verwendet werden soll. Die
SSE_KMS
EinstellungenSSE_S3
und sind in Aurora My SQL Version 3.05 und höher verfügbar.Sie können auch die Sitzungsvariable
aurora_select_into_s3_encryption_default
anstelle der KlauselENCRYPTION
verwenden, wie im folgenden Beispiel gezeigt. Verwenden Sie entweder die SQL Klausel oder die Sitzungsvariable, aber nicht beide.set session set session aurora_select_into_s3_encryption_default={ON | OFF | SSE_S3 | SSE_KMS};
Die
SSE_KMS
EinstellungenSSE_S3
und sind in Aurora My SQL Version 3.05 und höher verfügbar.Wenn Sie
aurora_select_into_s3_encryption_default
auf folgende Werte einstellen, gilt:-
OFF
: Es wird die Standardverschlüsselungsrichtlinie des S3-Buckets befolgt. Der Standardwert vonaurora_select_into_s3_encryption_default
istOFF
. -
ON
oderSSE_S3
— Das S3-Objekt ist mit verwalteten Amazon S3 S3-Schlüsseln (SSE-S3) verschlüsselt. -
SSE_KMS
— Das S3-Objekt ist mit einem AWS KMS key verschlüsselt.In diesem Fall fügen Sie auch die Sitzungsvariable
aurora_s3_default_cmk_id
hinzu, beispielsweise:set session aurora_select_into_s3_encryption_default={SSE_KMS}; set session aurora_s3_default_cmk_id={NULL | '
cmk_id
'};-
Wenn
aurora_s3_default_cmk_id
NULL
ist, wird das S3-Objekt mit einem Von AWS verwalteter Schlüssel verschlüsselt. -
Wenn es sich bei
aurora_s3_default_cmk_id
um eine nicht leere Zeichenfolgecmk_id
handelt, wird das S3-Objekt mit einem vom Kunden verwalteten Schlüssel verschlüsselt.Der Wert von
cmk_id
kann keine leere Zeichenfolge sein.
-
Wenn Sie den Befehl
SELECT INTO OUTFILE S3
verwenden, bestimmt Aurora die Verschlüsselung wie folgt:-
Wenn die
ENCRYPTION
Klausel im SQL Befehl enthalten ist, stützt sich Aurora nur auf den Wert vonENCRYPTION
und verwendet keine Sitzungsvariable. -
Wenn die Klausel
ENCRYPTION
nicht vorhanden ist, stützt sich Aurora auf den Wert der Sitzungsvariablen.
Weitere Informationen finden Sie unter Verwenden der serverseitigen Verschlüsselung mit verwalteten Amazon S3 S3-Schlüsseln (SSE-S3) und Verwenden der serverseitigen Verschlüsselung mit AWS KMS Schlüsseln (SSE-KMS) im Amazon Simple Storage Service-Benutzerhandbuch.
-
Weitere Informationen zu anderen Parametern finden Sie unter SELECTAnweisung und LOADDATAAnweisung
Überlegungen
Die Anzahl der in den Amazon S3 S3-Bucket geschriebenen Dateien hängt von der in der SELECT INTO OUTFILE S3
Anweisung ausgewählten Datenmenge und dem Schwellenwert für die Dateigröße für Aurora My abSQL. Der Standard-Schwellenwert für die Dateigröße liegt bei 6 GB. Wenn die vom Statement ausgewählte Datei kleiner ist als der Schwellenwert für die Dateigröße, wird eine einzelne Datei erstellt, andernfalls werden mehrere Dateien erstellt. Außerdem sollte Folgendes für Dateien, die von diesem Statement erstellt wurden, beachtet werden:
-
Aurora My SQL garantiert, dass Zeilen in Datendateien nicht über Dateigrenzen hinweg aufgeteilt werden. Bei mehreren Dateien liegt die Dateigröße jeder Datei, außer der Letzten, normalerweise sehr dicht am Schwellenwert. Jedoch kann es gelegentlich vorkommen, dass die Zeilen von Dateien, deren Größe unter dem Schwellenwert liegt, zwischen zwei Dateien aufgeteilt werden. In diesem Fall SQL erstellt Aurora My eine Datendatei, die die Zeile intakt hält, aber möglicherweise größer als der Schwellenwert für die Dateigröße ist.
-
Da jede
SELECT
Anweisung in Aurora My als atomare Transaktion SQL ausgeführt wird, kann eineSELECT INTO OUTFILE S3
Anweisung, die einen großen Datensatz auswählt, einige Zeit lang ausgeführt werden. Wenn die Anweisung aus irgendeinem Grund fehlschlägt, müssen Sie möglicherweise erneut starten und die Anweisung nochmals ausstellen. Wenn die Anweisung fehlschlägt, bleiben Dateien, die bereits in Amazon S3 hochgeladen wurden, im angegebenen Amazon S3-Bucket bestehen. Sie können ein anderes Statement verwenden, um die übrigen Daten hochzuladen, anstatt von Neuem zu starten. -
Wenn die auszuwählende Datenmenge groß ist (mehr als 25 GB), empfehlen wir Ihnen, mehrere
SELECT INTO OUTFILE S3
-Anweisungen zu verwenden, um die Daten in Amazon S3 zu speichern. Jedes Statement sollte eine andere Partition für die zu speichernden Daten auswählen und auch ein anderesfile_prefix
ims3-uri
-Parameter angeben, wenn die Daten gespeichert werden. Die Partitionierung der zu selektierenden Daten mit mehreren Anweisungen erleichtert die Behebung eines Fehlers in einer Anweisung. Wenn bei einer Aussage ein Fehler auftritt, muss nur ein Teil der Daten neu ausgewählt und in Amazon S3 hochgeladen werden. Die Verwendung von mehreren Statements hilft auch eine lange dauernde Einzeltransaktion zu vermeiden, was die Leistung verbessern kann. -
Wenn mehrere
SELECT INTO OUTFILE S3
-Anweisungen, die das selbefile_prefix
ims3-uri
-Parameter verwenden, parallel ausgeführt werden, um Daten nach Amazon S3 auszuwählen, kann das Verhalten nicht eingeschätzt werden. -
Metadaten, wie Tabellenschema- oder Dateimetadaten, werden von Aurora My nicht SQL auf Amazon S3 hochgeladen.
-
In einigen Fällen können Sie eine
SELECT INTO OUTFILE S3
-Abfrage erneut tätigen, um beispielsweise nach einem Fehler wiederherzustellen. In diesen Fällen müssen Sie entweder alle bestehenden Dateien mit dem selben Präfix, wie ins3-uri
angegeben, aus dem Amazon S3-Bucket entfernen oderOVERWRITE ON
in dieSELECT INTO OUTFILE S3
-Abfrage einbinden.
Die SELECT INTO OUTFILE S3
Anweisung gibt eine typische SQL My-Fehlernummer und eine Antwort bei Erfolg oder Misserfolg zurück. Wenn Sie keinen Zugriff auf die SQL Fehlernummer und die Antwort von My haben, können Sie am einfachsten feststellen, wann der Fehler behoben ist, indem Sie dies MANIFEST ON
in der Anweisung angeben. Die Manifestdatei ist die letzte Datei, die vom Statement geschrieben wurde. Mit anderen Worten, wenn Sie über eine Manifestdatei verfügen, hat die Anweisung die Ausführung abgeschlossen.
Aktuell gibt es keine Möglichkeit, den Fortschritt der SELECT
INTO OUTFILE S3
-Anweisung bei der Ausführung direkt zu überwachen. Nehmen wir jedoch an, Sie schreiben mithilfe dieser Anweisung eine große Datenmenge von Aurora My SQL nach Amazon S3 und Sie kennen die Größe der in der Anweisung ausgewählten Daten. In diesem Fall können Sie den Fortschritt schätzen, indem Sie die Erstellung der Dateien in Amazon S3 überwachen.
Dabei können Sie sich die Tatsache zunutze machen, dass eine Datei im festgelegten Amazon S3-Bucket für je 6 GB Daten, die vom Statement ausgewählt wurden, erstellt wird. Teilen Sie diese ausgewählte Datengröße durch 6 GB, um eine geschätzte Anzahl der zu erstellenden Dateien zu erhalten. So können Sie den Fortschritt der Anweisung einschätzen, wenn Sie die Anzahl der in Amazon S3 hochgeladenen Dateien während der Ausführung der Anweisung überwachen.
Beispiele
Die folgende Anweisung wählt alle Daten in der employees
Tabelle aus und speichert die Daten in einem Amazon S3 S3-Bucket, der sich in einer anderen Region als der Aurora My SQL DB-Cluster befindet. Das Statement erstellt Dateien, bei denen jedes Feld durch ein Komma (,
) und jede Zeile durch einen Zeilenumbruch (\n
) beendet wird. Die Anweisung gibt einen Fehler zurück, wenn sich Dateien, die mit dem Dateipräfix sample_employee_data
übereinstimmen, im angegebenen Amazon S3-Bucket befinden.
SELECT * FROM employees INTO OUTFILE S3 's3-us-west-2://aurora-select-into-s3-pdx/sample_employee_data' FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n';
Die folgende Anweisung wählt alle Daten in der employees
Tabelle aus und speichert die Daten in einem Amazon S3 S3-Bucket, der sich in derselben Region wie der Aurora My SQL DB-Cluster befindet. Das Statement erstellt Dateien bei denen jedes Feld durch ein Komma (,
) und jede Zeile durch einen Zeilenumbruch (\n
) beendet wird. Zudem wird eine Manifestdatei erstellt. Die Anweisung gibt einen Fehler zurück, wenn sich Dateien, die mit dem Dateipräfix sample_employee_data
übereinstimmen, im angegebenen Amazon S3-Bucket befinden.
SELECT * FROM employees INTO OUTFILE S3 's3://aurora-select-into-s3-pdx/sample_employee_data' FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' MANIFEST ON;
Die folgende Anweisung wählt alle Daten in der Tabelle employees
aus und speichert die Daten in einem Amazon S3-Bucket, der sich in einer anderen Region als der Aurora-DB-Cluster befindet. Das Statement erstellt Dateien, bei denen jedes Feld durch ein Komma (,
) und jede Zeile durch einen Zeilenumbruch (\n
) beendet wird. Die Anweisung überschreibt alle bestehenden Dateien, die mit dem Dateipräfix sample_employee_data
im angegebenen Amazon S3-Bucket übereinstimmen.
SELECT * FROM employees INTO OUTFILE S3 's3-us-west-2://aurora-select-into-s3-pdx/sample_employee_data' FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' OVERWRITE ON;
Die folgende Anweisung wählt alle Daten in der employees
Tabelle aus und speichert die Daten in einem Amazon S3 S3-Bucket, der sich in derselben Region wie der Aurora My SQL DB-Cluster befindet. Das Statement erstellt Dateien bei denen jedes Feld durch ein Komma (,
) und jede Zeile durch einen Zeilenumbruch (\n
) beendet wird. Zudem wird eine Manifestdatei erstellt. Die Anweisung überschreibt alle bestehenden Dateien, die mit dem Dateipräfix sample_employee_data
im angegebenen Amazon S3-Bucket übereinstimmen.
SELECT * FROM employees INTO OUTFILE S3 's3://aurora-select-into-s3-pdx/sample_employee_data' FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n' MANIFEST ON OVERWRITE ON;