Auf dieser Seite wird gezeigt, wie Sie Daten mithilfe von CSV-Dateien exportieren und in Cloud SQL-Instanzen importieren.
Hinweise
Für einen Export- oder Importvorgang ist Folgendes zu beachten:
- Sorgen Sie dafür, dass in Ihrer Datenbank ausreichend freier Speicherplatz vorhanden ist.
- Prüfen Sie, ob die CSV-Datei die erwarteten Daten enthält und im richtigen Format vorliegt. CSV-Dateien müssen eine Zeile pro Satz Datenfelder haben.
- Beachten Sie die Best Practices zum Exportieren und Importieren von Daten.
Export- und Importvorgänge verwenden Datenbankressourcen, stören den normalen Datenbankbetrieb jedoch nicht, wenn die Instanz nicht unterdimensioniert ist.
Daten aus Cloud SQL for PostgreSQL exportieren
Erforderliche Rollen und Berechtigungen für das Exportieren aus Cloud SQL for PostgreSQL
Damit Daten aus Cloud SQL in Cloud Storage exportiert werden können, muss der Nutzer, der den Export initiiert, eine der folgenden Rollen haben:
- Die Rolle Cloud SQL-Bearbeiter
- Eine benutzerdefinierte Rolle mit folgenden Berechtigungen:
cloudsql.instances.get
cloudsql.instances.export
Darüber hinaus muss das Dienstkonto für die Cloud SQL-Instanz eine der folgenden Rollen haben:
- Die Rolle
storage.objectAdmin
für die Identitäts- und Zugriffsverwaltung (Identity and Access Management, IAM) - Eine benutzerdefinierte Rolle mit folgenden Berechtigungen:
storage.objects.create
storage.objects.list
(nur für parallelen Export von Dateien)storage.objects.delete
(nur für parallelen Export von Dateien)
Informationen zu IAM-Rollen finden Sie unter Identity and Access Management.
Daten aus Cloud SQL for PostgreSQL in eine CSV-Datei exportieren
Sie können Ihre Daten im CSV-Format exportieren, das von anderen Tools und Umgebungen verwendet werden kann. Exporte erfolgen auf Datenbankebene. Während eines CSV-Exports können Sie die zu exportierenden Schemas angeben. Alle Schemas auf Datenbankebene können exportiert werden.
So exportieren Sie Daten aus einer Datenbank in einer Cloud SQL-Instanz in eine CSV-Datei in einem Cloud Storage-Bucket:
Console
-
Wechseln Sie in der Google Cloud Console zur Seite Cloud SQL-Instanzen.
- Klicken Sie auf den Instanznamen, um die Übersichtsseite einer Instanz zu öffnen.
- Klicken Sie auf Exportieren.
- Wählen Sie Export auslagern aus, um andere Vorgänge ausführen zu können, während der Export läuft.
-
Fügen Sie im Bereich Cloud Storage-Exportspeicherort den Namen des Buckets, Ordners und der Datei hinzu, die Sie exportieren möchten, oder klicken Sie auf Durchsuchen, um einen Bucket, Ordner oder eine Datei zu suchen oder zu erstellen.
Wenn Sie auf Durchsuchen klicken, gehen Sie so vor:
- Wählen Sie im Bereich Speicherort einen Cloud Storage-Bucket oder -Ordner für den Export aus.
Geben Sie im Feld Name einen Namen für die Datei
CSV
ein oder wählen Sie eine vorhandene Datei aus der Liste im Abschnitt Speicherort aus.Sie können die Dateiendung
.gz
(die vollständige Erweiterung lautet.csv.gz
) verwenden, um die Exportdatei zu komprimieren.- Klicken Sie auf Auswählen.
- Klicken Sie im Abschnitt Format auf CSV.
- Wählen Sie im Abschnitt Datenbank für den Export den Namen der Datenbank aus dem Drop-down-Menü aus.
-
Geben Sie für SQL-Abfrage eine SQL-Abfrage ein, um die Tabelle anzugeben, aus der Daten exportiert werden sollen.
Wenn Sie beispielsweise den gesamten Inhalt der Tabelle
entries
in die Datenbankguestbook
exportieren möchten, geben Sie Folgendes ein: Sie müssen in Ihrer Abfrage eine Tabelle in der angegebenen Datenbank festlegen. Es kann nicht die gesamte Datenbank in das CSV-Format exportiert werden.SELECT * FROM guestbook.entries;
- Klicken Sie auf Exportieren, um den Export zu starten.
- Das Feld Datenbank exportieren? wird mit einer Meldung geöffnet, dass der Exportvorgang bei großen Datenbanken eine Stunde oder länger dauern kann. Während des Exports können nur Informationen zur Instanz abgerufen werden. Nachdem der Export gestartet wurde, können Sie den Vorgang abbrechen. Klicken Sie auf Exportieren, um den Export zu starten. Klicken Sie andernfalls auf Abbrechen.
gcloud
- Erstellen Sie einen Cloud Storage-Bucket.
Laden Sie die Datei in den Bucket hoch.
Informationen zum Hochladen von Dateien in Buckets finden Sie unter Objekte hochladen.
- Suchen Sie das Dienstkonto für die Cloud SQL-Instanz, aus der Sie exportieren. Dazu können Sie den Befehl
gcloud sql instances describe
verwenden. Suchen Sie in der Ausgabe nach dem FeldserviceAccountEmailAddress
.gcloud sql instances describe INSTANCE_NAME
- Weisen Sie mit
gcloud storage buckets add-iam-policy-binding
dem Cloud SQL-Instanzdienstkonto die IAM-Rollestorage.objectAdmin
zu. Weitere Informationen zum Festlegen von IAM-Berechtigungen finden Sie unter IAM-Berechtigungen verwenden. - Exportieren Sie die Datenbank:
gcloud sql export csv INSTANCE_NAME gs://BUCKET_NAME/FILE_NAME \ --database=DATABASE_NAME \ --offload \ --query=SELECT_QUERY
Informationen zum Verwenden des Befehls
export csv
finden Sie auf der Referenzseite des Befehlssql export csv
. - Wenn Sie die zuvor festgelegte IAM-Rolle nicht beibehalten möchten, entfernen Sie sie jetzt.
REST Version 1
- Erstellen Sie einen Bucket für den Export:
gcloud storage buckets create gs://BUCKET_NAME --location=LOCATION_NAME --project=PROJECT_NAME
Dieser Schritt ist nicht erforderlich, wird aber dringend empfohlen, damit kein Zugriff auf andere Daten möglich ist.
- Weisen Sie Ihrer Instanz die IAM-Rolle
legacyBucketWriter
für Ihren Bucket zu. Weitere Informationen zum Festlegen von IAM-Berechtigungen finden Sie unter IAM-Berechtigungen verwenden. -
Exportieren Sie Ihre Datenbank:
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- project-id: die Projekt-ID
- instance-id: die Instanz-ID
- bucket_name: der Name des Cloud Storage-Buckets
- path_to_csv_file: der Pfad zur CSV-Datei
- database_name: der Name einer Datenbank in der Cloud SQL-Instanz
- offload: aktiviert den serverlosen Export. Legen Sie
true
fest, um den serverlosen Export zu verwenden. - select_query: SQL-Abfrage für den Export (optional)
- escape_character: das Zeichen, das vor einem Datenzeichen stehen muss, das maskiert werden soll. Der Wert dieses Arguments muss als ein Zeichen im Hex-ASCII-Code angegeben werden. Beispiel: "22" steht für doppelte Anführungszeichen. (optional)
- quote_character: das Zeichen, das Werte aus Spalten mit dem Datentyp "String" umschließt. Der Wert dieses Arguments muss als ein Zeichen im Hex-ASCII-Code angegeben werden. Beispiel: "22" steht für doppelte Anführungszeichen. (optional)
- fields_terminated_by: das Zeichen, das die Spaltenwerte aufteilt. Der Wert dieses Arguments muss als ein Zeichen im Hex-ASCII-Code angegeben werden. "2C" steht beispielsweise für ein Komma. (optional)
- lines_terminated_by: das Zeichen, das die Zeileneinträge aufteilt. Der Wert dieses Arguments muss als ein Zeichen im Hex-ASCII-Code angegeben werden. Beispielsweise steht "0A" für eine neue Zeile. (optional)
HTTP-Methode und URL:
POST https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/export
JSON-Text anfordern:
{ "exportContext": { "fileType": "CSV", "uri": "gs://bucket_name/path_to_csv_file", "databases": ["database_name"], "offload": true | false "csvExportOptions": { "selectQuery":"select_query", "escapeCharacter":"escape_character", "quoteCharacter":"quote_character", "fieldsTerminatedBy":"fields_terminated_by", "linesTerminatedBy":"lines_terminated_by" } } }
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten in etwa folgende JSON-Antwort erhalten:
Sie müssen genau eine Datenbank mit dem Attribut
databases
angeben. Wenn Sie in der Auswahlabfrage eine Datenbank festlegen, muss diese damit identisch sein. - Wenn Sie die zuvor festgelegten IAM-Berechtigungen nicht beibehalten möchten, entfernen Sie diese jetzt.
REST v1beta4
- Erstellen Sie einen Bucket für den Export:
gcloud storage buckets create gs://BUCKET_NAME --location=LOCATION_NAME --project=PROJECT_NAME
Dieser Schritt ist nicht erforderlich, wird aber dringend empfohlen, damit kein Zugriff auf andere Daten möglich ist.
- Weisen Sie Ihrer Instanz die IAM-Rolle
storage.objectAdmin
für Ihren Bucket zu. Weitere Informationen zum Festlegen von IAM-Berechtigungen finden Sie unter IAM-Berechtigungen verwenden. -
Exportieren Sie Ihre Datenbank:
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- project-id: die Projekt-ID
- instance-id: die Instanz-ID
- bucket_name: der Name des Cloud Storage-Buckets
- path_to_csv_file: der Pfad zur CSV-Datei
- database_name: der Name einer Datenbank in der Cloud SQL-Instanz
- offload: aktiviert den serverlosen Export. Legen Sie
true
fest, um den serverlosen Export zu verwenden. - select_query: SQL-Abfrage für den Export (optional)
- escape_character: das Zeichen, das vor einem Datenzeichen stehen muss, das maskiert werden soll. Der Wert dieses Arguments muss im ASCII-Hexadezimalformat angegeben werden. Beispiel: "22" steht für doppelte Anführungszeichen. (optional)
- quote_character: das Zeichen, das Werte aus Spalten mit dem Datentyp "String" umschließt. Der Wert dieses Arguments muss im ASCII-Hexadezimalformat angegeben werden. Beispiel: "22" steht für doppelte Anführungszeichen. (optional)
- fields_terminated_by: das Zeichen, das die Spaltenwerte aufteilt. Der Wert dieses Arguments muss im ASCII-Hexadezimalformat angegeben werden. "2C" steht beispielsweise für ein Komma. (optional)
- lines_terminated_by: das Zeichen, das die Zeileneinträge aufteilt. Der Wert dieses Arguments muss im ASCII-Hexadezimalformat angegeben werden. Beispielsweise steht "0A" für eine neue Zeile. (optional)
HTTP-Methode und URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/export
JSON-Text anfordern:
{ "exportContext": { "fileType": "CSV", "uri": "gs://bucket_name/path_to_csv_file", "databases": ["database_name"], "offload": true | false "csvExportOptions": { "selectQuery": "select_query", "escapeCharacter": "escape_character", "quoteCharacter": "quote_character", "fieldsTerminatedBy": "fields_terminated_by", "linesTerminatedBy": "lines_terminated_by" } } }
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten in etwa folgende JSON-Antwort erhalten:
Sie müssen genau eine Datenbank mit dem Attribut
databases
angeben. Wenn Sie in der Auswahlabfrage eine Datenbank festlegen, muss diese damit identisch sein. - Wenn Sie die zuvor festgelegte IAM-Rolle nicht beibehalten möchten, entfernen Sie sie jetzt.
Format einer CSV-Exportdatei anpassen
Zum Anpassen des CSV-Dateiformats können Sie gcloud
oder die REST API verwenden. Wenn Sie einen Export ausführen, können Sie die folgenden Formatierungsoptionen festlegen:
CSV-Option | Standardwert | gcloud-Flag | REST API-Attribut | Beschreibung |
---|---|---|---|---|
Escape-Taste |
ASCII-Hexadezimalcode für Dateitrennzeichen. |
--escape |
escapeCharacter |
Zeichen, das vor einem Datenzeichen stehen muss, das maskiert werden soll. Nur für MySQL und PostgreSQL verfügbar. |
Angebot |
ASCII-Hexadezimalcode für doppelte Anführungszeichen. |
--quote |
quoteCharacter |
Zeichen, das Werte aus Spalten mit dem Datentyp "String" umschließt. Nur für MySQL und PostgreSQL verfügbar. |
Feldtrennzeichen |
ASCII-Hexadezimalcode für Komma. |
--fields-terminated-by |
fieldsTerminatedBy |
Zeichen, das die Spaltenwerte aufteilt. Nur für MySQL und PostgreSQL verfügbar. |
Zeilenumbruch |
ASCII-Hexadezimalcode für Zeilenumbruch. |
--lines-terminated-by |
linesTerminatedBy |
Zeichen, das Zeileneinträge aufteilt. Nur für MySQL verfügbar. |
Ein gcloud
-Befehl mit diesen Argumenten kann beispielsweise so aussehen:
gcloud sql export csv INSTANCE_NAME gs://BUCKET_NAME/FILE_NAME \ --database=DATABASE_NAME \ --offload \ --query=SELECT_QUERY \ --quote="22" \ --escape="5C" \ --fields-terminated-by="2C" \ --lines-terminated-by="0A"
Der entsprechende REST API-Anfragetext würde so aussehen:
{ "exportContext": { "fileType": "CSV", "uri": "gs://bucket_name/path_to_csv_file", "databases": ["DATABASE_NAME"], "offload": true, "csvExportOptions": { "selectQuery": "SELECT_QUERY", "escapeCharacter": "5C", "quoteCharacter": "22", "fieldsTerminatedBy": "2C", "linesTerminatedBy": "0A" } } }
Beim CSV-Export wird standardmäßig eine Standard-CSV-Ausgabe erstellt. Wenn Sie noch mehr Optionen benötigen, als Cloud SQL bereitstellt, können Sie die folgende Anweisung in einem psql-Client verwenden:
\copy [table_name] TO '[csv_file_name].csv' WITH (FORMAT csv, ESCAPE '[escape_character]', QUOTE '[quote_character]', DELIMITER '[delimiter_character]', ENCODING 'UTF8', NULL '[null_marker_string]');
Daten in Cloud SQL for PostgreSQL importieren
Erforderliche Rollen und Berechtigungen für das Importieren in Cloud SQL for PostgreSQL
Wenn Sie Daten aus Cloud Storage in Cloud SQL importieren möchten, muss der Nutzer, der den Import initiiert, eine der folgenden Rollen haben:
- Die Rolle Cloud SQL-Administrator
- Eine benutzerdefinierte Rolle mit folgenden Berechtigungen:
cloudsql.instances.get
cloudsql.instances.import
Darüber hinaus muss das Dienstkonto für die Cloud SQL-Instanz eine der folgenden Rollen haben:
storage.objectAdmin
IAM-Rolle.- Eine benutzerdefinierte Rolle mit folgenden Berechtigungen:
storage.objects.get
storage.objects.list
(nur für parallelen Import von Dateien)
Informationen zu IAM-Rollen finden Sie unter Identity and Access Management.
Daten aus einer CSV-Datei in Cloud SQL for PostgreSQL importieren
- Die Datenbank und die Tabelle, in die importiert werden sollen, müssen in der Cloud SQL-Instanz vorhanden sein. Informationen zum Erstellen einer Datenbank finden Sie unter Datenbank erstellen.
- Ihre CSV-Datei muss den Formatanforderungen für CSV-Dateien entsprechen.
Formatanforderungen an CSV-Dateien
Die CSV-Dateien müssen eine Zeile pro Datensatz und kommagetrennte Felder haben.
So importieren Sie Daten aus einer CSV-Datei in eine Cloud-SQL-Instanz:
Console
-
Wechseln Sie in der Google Cloud Console zur Seite Cloud SQL-Instanzen.
- Klicken Sie auf den Instanznamen, um die Übersichtsseite einer Instanz zu öffnen.
- Klicken Sie auf Importieren.
- Geben Sie im Bereich Datei auswählen, aus der Daten importiert werden sollen den Pfad zum Bucket und zur CSV-Datei für den Import ein. Oder öffnen Sie die Datei:
- Klicken Sie auf Durchsuchen.
- Klicken Sie im Abschnitt Standort doppelt auf den Namen des Buckets in der Liste.
- Wählen Sie die Datei in der Liste aus.
- Klicken Sie auf Auswählen.
Sie können eine komprimierte Datei (
.gz
) oder eine unkomprimierte Datei (.csv
) importieren. - Wählen Sie im Bereich Format die Option CSV aus.
- Geben Sie die Datenbank und die Tabelle in der Cloud SQL-Instanz an, in die die CSV-Datei importiert werden soll.
- Sie können optional einen Nutzer für den Importvorgang angeben.
- Klicken Sie auf Importieren, um den Import zu starten.
gcloud
- Erstellen Sie einen Cloud Storage-Bucket.
Laden Sie die Datei in den Bucket hoch.
Informationen zum Hochladen von Dateien in Buckets finden Sie unter Objekte hochladen.
- Laden Sie Daten aus der CSV-Datei in den Bucket hoch.
- Identifizieren Sie das Dienstkonto für die Cloud SQL-Instanz, aus der Sie exportieren. Dazu können Sie den
gcloud sql instances describe
-Befehl mit dem Instanznamen ausführen. Suchen Sie in der Ausgabe nach dem FeldserviceAccountEmailAddress
.gcloud sql instances describe INSTANCE_NAME
- Kopieren Sie das Feld "serviceAccountEmailAddress".
- Weisen Sie mit
gcloud storage buckets add-iam-policy-binding
dem Cloud SQL-Instanzdienstkonto für den Bucket die IAM-Rollestorage.objectAdmin
zu. Weitere Informationen zum Festlegen von IAM-Berechtigungen finden Sie unter IAM-Berechtigungen verwenden. - Importieren Sie die Datei:
gcloud sql import csv INSTANCE_NAME gs://BUCKET_NAME/FILE_NAME \ --database=DATABASE_NAME \ --table=TABLE_NAME
Informationen zum Verwenden des Befehls
import csv
finden Sie auf der Referenzseite des Befehlssql import csv
. - Wenn Sie die zuvor festgelegten Cloud IAM-Berechtigungen nicht beibehalten möchten, entfernen Sie diese mit
gcloud storage buckets remove-iam-policy-binding
.
REST Version 1
- Erstellen Sie einen Cloud Storage-Bucket.
Laden Sie die Datei in den Bucket hoch.
Informationen zum Hochladen von Dateien in Buckets finden Sie unter Objekte hochladen.
- Weisen Sie Ihrer Instanz die IAM-Rollen
legacyBucketWriter
undobjectViewer
für Ihren Bucket zu. Weitere Informationen zum Festlegen von IAM-Berechtigungen finden Sie unter IAM-Berechtigungen verwenden. - Importieren Sie die Datei:
Ersetzen Sie dabei folgende Werte für die Anfragedaten:
- project-id: die Projekt-ID
- instance-id: die Instanz-ID
- bucket_name: der Name des Cloud Storage-Buckets
- path_to_csv_file: der Pfad zur CSV-Datei
- database_name: der Name einer Datenbank in der Cloud SQL-Instanz
- table_name: der Name der Datenbanktabelle.
- escape_character: das Zeichen, das vor einem Datenzeichen stehen muss, das maskiert werden soll. Der Wert dieses Arguments muss als ein Zeichen im Hex-ASCII-Code angegeben werden. Beispiel: "22" steht für doppelte Anführungszeichen. (optional)
- quote_character: das Zeichen, das Werte aus Spalten mit dem Datentyp "String" umschließt. Der Wert dieses Arguments muss als ein Zeichen im Hex-ASCII-Code angegeben werden. Beispiel: "22" steht für doppelte Anführungszeichen. (optional)
- fields_terminated_by: das Zeichen, das die Spaltenwerte aufteilt. Der Wert dieses Arguments muss als ein Zeichen im Hex-ASCII-Code angegeben werden. "2C" steht beispielsweise für ein Komma. (optional)
- lines_terminated_by: das Zeichen, das die Zeileneinträge aufteilt. Der Wert dieses Arguments muss als ein Zeichen im Hex-ASCII-Code angegeben werden. Beispielsweise steht "0A" für eine neue Zeile. (optional)
HTTP-Methode und URL:
POST https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/import
JSON-Text anfordern:
{ "importContext": { "fileType": "CSV", "uri": "gs://bucket_name/path_to_csv_file", "database": "database_name", "csvImportOptions": { "table": "table_name", "escapeCharacter": "escape_character", "quoteCharacter": "quote_character", "fieldsTerminatedBy": "fields_terminated_by", "linesTerminatedBy": "lines_terminated_by" } } }
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten in etwa folgende JSON-Antwort erhalten:
Die vollständige Liste der Parameter für die Anfrage finden Sie auf der Seite instances:import. - Wenn Sie die zuvor festgelegten Cloud IAM-Berechtigungen nicht beibehalten möchten, entfernen Sie diese.
REST v1beta4
- Erstellen Sie einen Cloud Storage-Bucket.
Laden Sie die Datei in den Bucket hoch.
Informationen zum Hochladen von Dateien in Buckets finden Sie unter Objekte hochladen.
- Weisen Sie Ihrer Instanz die IAM-Rolle
storage.objectAdmin
für Ihren Bucket zu. Weitere Informationen zum Festlegen von IAM-Berechtigungen finden Sie unter IAM-Berechtigungen verwenden. - Importieren Sie die Datei:
Ersetzen Sie dabei folgende Werte für die Anfragedaten:
- project-id: die Projekt-ID
- instance-id: die Instanz-ID
- bucket_name: der Name des Cloud Storage-Buckets
- path_to_csv_file: der Pfad zur CSV-Datei
- database_name: der Name einer Datenbank in der Cloud SQL-Instanz
- table_name: der Name der Datenbanktabelle.
- escape_character: das Zeichen, das vor einem Datenzeichen stehen muss, das maskiert werden soll. Der Wert dieses Arguments muss im ASCII-Hexadezimalformat angegeben werden. Beispiel: "22" steht für doppelte Anführungszeichen. (optional)
- quote_character: das Zeichen, das Werte aus Spalten mit dem Datentyp "String" umschließt. Der Wert dieses Arguments muss im ASCII-Hexadezimalformat angegeben werden. Beispiel: "22" steht für doppelte Anführungszeichen. (optional)
- fields_terminated_by: das Zeichen, das die Spaltenwerte aufteilt. Der Wert dieses Arguments muss im ASCII-Hexadezimalformat angegeben werden. "2C" steht beispielsweise für ein Komma. (optional)
- lines_terminated_by: das Zeichen, das die Zeileneinträge aufteilt. Der Wert dieses Arguments muss im ASCII-Hexadezimalformat angegeben werden. Beispielsweise steht "0A" für eine neue Zeile. (optional)
HTTP-Methode und URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/import
JSON-Text anfordern:
{ "importContext": { "fileType": "CSV", "uri": "gs://bucket_name/path_to_csv_file", "database": "database_name", "csvImportOptions": { "table": "table_name", "escapeCharacter": "escape_character", "quoteCharacter": "quote_character", "fieldsTerminatedBy": "fields_terminated_by", "linesTerminatedBy": "lines_terminated_by" } } }
Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:
Sie sollten in etwa folgende JSON-Antwort erhalten:
Die vollständige Liste der Parameter für die Anfrage finden Sie auf der Seite instances:import. - Wenn Sie die zuvor festgelegten Cloud IAM-Berechtigungen nicht beibehalten möchten, entfernen Sie diese.
Format einer CSV-Datei für Cloud SQL for PostgreSQL anpassen
Zum Anpassen des CSV-Dateiformats können Sie gcloud
oder die REST API verwenden.
Beispiel für einen gcloud
-Befehl:
gcloud sql import csv INSTANCE_NAME gs://BUCKET_NAME/FILE_NAME \ --database=DATABASE_NAME \ --table=TABLE_NAME \ --quote="22" \ --escape="5C" \ --fields-terminated-by="2C" \ --lines-terminated-by="0A"
Der entsprechende REST API-Anfragetext würde so aussehen:
{ "importContext": { "fileType": "CSV", "uri": "gs://bucket_name/path_to_csv_file", "database": ["DATABASE_NAME"], "csvImportOptions": { "table": "TABLE_NAME", "escapeCharacter": "5C", "quoteCharacter": "22", "fieldsTerminatedBy": "2C", "linesTerminatedBy": "0A" } } }
Wenn ein Fehler wie z. B. ERROR_RDBMS
angezeigt wird, prüfen Sie, ob die Tabelle vorhanden ist. Ist die Tabelle vorhanden, sollten Sie ermitteln, ob Sie die richtigen Berechtigungen für den Bucket haben. Hilfe zum Konfigurieren der Zugriffssteuerung in Cloud Storage finden Sie unter Access Control Lists (ACLs) erstellen und verwalten.
Weitere Informationen
- Status der Import- und Exportoperationen überprüfen
- Best Practices zum Importieren und Exportieren von Daten
- Bekannte Probleme bei Importen und Exporten