Speichern von Daten aus einem Amazon Aurora My SQL DB-Cluster in Textdateien in einem Amazon S3 S3-Bucket - Amazon Aurora

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.

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
  1. 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.

  2. 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.

  3. Setzen Sie für Aurora My SQL Version 2 entweder den aws_default_s3_role DB-Cluster-Parameter aurora_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.

  4. 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.

  5. 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 role_name 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 verwenden im My SQL Reference Manual.

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 im My SQL Reference Manual.

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 Manual. SQL

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 (Aurora My SQL Version 2) oder die Systemvariable replica_skip_errors (Aurora My Version 3). SQL

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 keinen region-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 ...] [FROM table_references [PARTITION partition_list] [WHERE where_condition] [GROUP BY {col_name | expr | position} [ASC | DESC], ... [WITH ROLLUP]] [HAVING where_condition] [ORDER BY {col_name | expr | position} [ASC | DESC], ...] [LIMIT {[offset,] row_count | row_count OFFSET offset}] INTO OUTFILE S3 's3_uri' [CHARACTER SET charset_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 der SELECT-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 SageMaker 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 über LOAD 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.manifest

Weitere 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 Einstellungen SSE_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 Klausel ENCRYPTION 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 Einstellungen SSE_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 von aurora_select_into_s3_encryption_default ist OFF.

  • ONoder SSE_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 Zeichenfolge cmk_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 von ENCRYPTION 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 in der Dokumentation Meine Daten. SQL

Ü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 eine SELECT 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 anderes file_prefix im s3-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 selbe file_prefix im s3-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 in s3-uri angegeben, aus dem Amazon S3-Bucket entfernen oder OVERWRITE ON in die SELECT 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;