Auf dieser Seite wird gezeigt, wie Sie Daten mithilfe von SQL-Dumpdateien exportieren und in Cloud SQL-Instanzen importieren.
Der Export von Cloud SQL in eine SQL-Dumpdatei wird für SQL Server nicht unterstützt.
Hinweise
Exporte verwenden Datenbankressourcen, stören den normalen Datenbankbetrieb jedoch nicht, wenn die Instanz nicht unterdimensioniert ist.
Best Practices finden Sie unter Best Practices zum Importieren und Exportieren von Daten.
Prüfen Sie die Ergebnisse nach Abschluss eines Importvorgangs.
Daten aus Cloud SQL for SQL Server exportieren
Der Export von Cloud SQL in eine SQL-Dumpdatei wird für SQL Server nicht unterstützt.Daten nach Cloud SQL for SQL Server importieren
Erforderliche Rollen und Berechtigungen für Importe in Cloud SQL for SQL Server
Zum Importieren von Daten aus Cloud Storage in Cloud SQL muss der Nutzer, der den Import initiiert, eine der folgenden Rollen haben:
- Die Rolle Cloud SQL-Bearbeiter
- 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 Stripe-Import)
Informationen zu IAM-Rollen finden Sie unter Identitäts- und Zugriffsverwaltung.
SQL-Dumpdatei in Cloud SQL for SQL Server importieren
SQL-Dateien sind Nur-Text-Dateien mit einer Abfolge von SQL-Befehlen.
Im folgenden Verfahren müssen Sie eine vorhandene Datenbank angeben, aus der Ihre SQL-Dateien importiert werden sollen.
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 Abschnitt Datei auswählen, aus der Sie Daten importieren möchten den Pfad zum Bucket und zur SQL-Dumpdatei für den Import ein oder wechseln Sie zu einer vorhandenen Datei.
Sie können eine komprimierte Datei (
.gz
) oder eine unkomprimierte Datei (.sql
) importieren. - Wählen Sie unter Format die Option SQL aus.
Wählen Sie die Datenbank aus, in die die Daten importiert werden sollen.
Dadurch führt Cloud SQL vor dem Import die Anweisung
USE DATABASE
aus.Wählen Sie bei Bedarf einen Nutzer für den Import aus.
Wenn Ihre Importdatei Anweisungen enthält, die von einem bestimmten Nutzer ausgeführt werden müssen, können Sie mit diesem Feld einen Nutzer 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.
- Beschreiben Sie die Instanz, in die Sie Daten importieren:
gcloud sql instances describe INSTANCE_NAME
- Kopieren Sie das Feld
serviceAccountEmailAddress
. - Weisen Sie mit
gsutil iam
die IAM-Rollestorage.objectAdmin
dem Dienstkonto für den Bucket zu.gsutil iam ch serviceAccount:SERVICE-ACCOUNT:objectAdmin \ gs://BUCKET_NAME
Weitere Informationen zum Festlegen von IAM-Berechtigungen finden Sie unter IAM-Berechtigungen verwenden. - Importieren Sie die Datenbank:
gcloud sql import sql INSTANCE_NAME gs://BUCKET_NAME/IMPORT_FILE_NAME \ --database=DATABASE_NAME
Informationen zum Verwenden des Befehls
import sql
finden Sie auf der Referenzseite des Befehlssql import sql
.Wenn durch den Befehl ein Fehler wie
ERROR_RDBMS
zurückgegeben wird, prüfen Sie die Berechtigungen. Dieser Fehler wird oft durch Berechtigungsprobleme verursacht. - Wenn Sie die zuvor festgelegten Cloud IAM-Berechtigungen nicht beibehalten möchten, entfernen Sie diese mit
gsutil iam
.
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 Dumpdatei:
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_sql_file: der Pfad zur SQL-Datei
- database_name: der Name einer Datenbank in der Cloud SQL-Instanz
HTTP-Methode und URL:
POST https://sqladmin.googleapis.com/v1/projects/project-id/instances/instance-id/import
JSON-Text anfordern:
{ "importContext": { "fileType": "SQL", "uri": "gs://bucket_name/path_to_sql_file", "database": "database_name" } }
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:insert. - Wenn Sie die zuvor festgelegten IAM-Berechtigungen nicht beibehalten möchten, entfernen Sie diese jetzt.
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 Dumpdatei:
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_sql_file: der Pfad zur SQL-Datei
- database_name: der Name einer Datenbank in der Cloud SQL-Instanz
HTTP-Methode und URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id/import
JSON-Text anfordern:
{ "importContext": { "fileType": "SQL", "uri": "gs://bucket_name/path_to_sql_file", "database": "database_name" } }
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:insert. - Wenn Sie die zuvor festgelegten IAM-Berechtigungen nicht beibehalten möchten, entfernen Sie diese jetzt.
Nächste Schritte
- Status der Import- und Exportoperationen überprüfen
- Best Practices zum Importieren und Exportieren von Daten
- Weitere Informationen zu Cloud Storage
- Bekannte Probleme bei Importen und Exporten