Übersicht
Database Migration Service bietet eine REST API zur programmatischen Verwaltung von Verbindungsprofilen und Migrationsjobs. Die REST API wird durch Ressourcen definiert, die mit dem Erstellen und Verwalten von Verbindungsprofilen und Migrationsjobs verbunden sind. Weitere Informationen zu allen Ressourcen und zugehörigen Methoden finden Sie in der Referenz zur Database Migration Service API.
Wenn Sie Anfragen direkt an die Database Migration Service REST API senden, müssen Sie die richtige Form der Anfrage erstellen, die Anfrage als authentifizierten Nutzer autorisieren und alle zurückgegebenen Antworten verarbeiten. Viele Aufgaben in dieser Dokumentation enthalten API-Beispiele mit cURL.
Weitere Beispiele zur Verwendung der APIs finden Sie auf der Seite für die Anfrage in der Referenz zur Database Migration Service API. Jede Seite enthält Beispiele zum Aufrufen der API in mehreren Programmiersprachen sowie einen anfragespezifischen Explorer, mit dem Sie sehen können, was in einer wohlgeformte Anfrage enthalten ist und was in der Antwort zu erwarten ist.
Sie verwenden die Database Migration Service API auch indirekt, wenn Sie eine der folgenden Methoden zur Verwaltung von Instanzen verwenden:
Google Cloud CLI: Eine Befehlszeilenschnittstelle (CLI), die Sie für die Arbeit mit Ihren Instanzen verwenden können.
Google Cloud consoleConsole: Eine grafische Weboberfläche.
Der Vorteil dieser Methoden besteht darin, dass sie die Verwaltung Ihrer Verbindungsprofile und Migrationsjobs (je nach Anwendungsfall) erheblich vereinfachen können. Dies gilt insbesondere für die Google Cloud Console. Wenn Sie noch nicht mit Database Migration Service vertraut sind, sollten Sie zuerst eines dieser Tools verwenden, bevor Sie direkt mit der REST API arbeiten.
API aktivieren
Damit Sie die Database Migration Service API verwenden können, müssen Sie sie aktivieren:
Console
- Aktivieren Sie die Database Migration Service API.
- Wählen Sie Ihr Projekt aus.
- Klicken Sie dann auf Weiter.
gcloud
- Geben Sie Folgendes ein, um sich die Projekt-IDs für Ihre Google Cloud
Projekte anzeigen zu lassen:
gcloud projects list
- Legen Sie ein Standardprojekt fest:
gcloud config set project YOUR_PROJECT_ID
- Aktivieren Sie die Cloud SQL Admin API:
gcloud services enable datamigration.googleapis.com
Berechtigungen
Sie benötigen die erforderlichen Berechtigungen, um die Database Migration Service API verwenden zu können. Diese Berechtigungen umfassen:
- Database Migration Admin: Mit dieser Berechtigung erhält ein Nutzer Zugriff auf alle Ressourcen von Database Migration Service, die zum Verwalten von Verbindungsprofilen und Migrationsjobs verwendet werden.
- Database Migration Viewer: Mit dieser Berechtigung hat ein Nutzer Lesezugriff auf Verbindungsprofile und Migrationsjobs in Database Migration Service.
- Cloud SQL Admin: Mit dieser Berechtigung kann ein Nutzer Verbindungsprofile und Migrationsjobs für Cloud SQL in Database Migration Service erstellen und verwalten.
Google Cloud bietet Identity and Access Management (IAM), mit dem Sie den Zugriff auf bestimmte Google Cloud Ressourcen genauer steuern und unerwünschten Zugriff auf andere Ressourcen verhindern können. Sie können Berechtigungen für Database Migration Service über die Google Cloud Console, die IAM-Methoden der API oder die Google Cloud CLI abrufen und festlegen. Weitere Informationen finden Sie unter Zugriff auf Ressourcen erteilen, ändern und entziehen.
Diese Seiten werden in den Anleitungen für MySQL, PostgreSQL und SQL Server angezeigt.
JSON-Daten aus einer Datei bereitstellen
Wenn Sie die API mit cURL verwenden, geben Sie Eigenschaftswerte über die Befehlszeile an. Wenn Sie mit vertraulichen Werten wie Passwörtern oder Sicherheitsschlüsseln arbeiten, stellt die Eingabe dieser Werte in der Befehlszeile ein Sicherheitsrisiko dar. Zur Erhöhung der Sicherheit können Sie eine Datei mit den JSON-Daten für den API-Aufruf erstellen und den Pfad zur Datei in der Befehlszeile angeben.
So stellen Sie JSON-Daten für Ihren cURL API-Aufruf aus einer Datei bereit:
Erstellen Sie eine Datei, die alles enthält, was in einfachen Anführungszeichen für das Feld
--datasteht.Verwenden Sie geschweifte Klammern, aber keine einfachen Anführungszeichen.
Geben Sie in der Befehlszeile den Pfad zur Datei mit dem vorangestellten
@-Zeichen als--data-Parameter an:--data @<path-to-file>/<filename>Wenn Sie beispielsweise ein Verbindungsprofil für eine Cloud SQL-Quelldatenbank erstellen möchten, können Sie eine Datei namens
request.jsonmit folgendem Inhalt erstellen:{ "displayName": "my Cloud SQL connection profile", "mysql": { "host": "10.11.12.13", "port": port-number-of-source-database, "username": "myusername", "password": "mypassword" } }Dann verwenden Sie den folgenden cURL-Befehl in der Befehlszeile:
curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \ --header 'Content-Type: application/json' \ --data @./request.json \ -X POST \ https://datamigration.googleapis.com/v1/projects/myProject/locations/myLocation/connectionProfiles?connectionProfileId=myCloudSQLconnectionprofile
Mit lang andauernden API-Aufrufen arbeiten
Einige API-Aufrufe wie die Objekterstellung können einige Zeit in Anspruch nehmen. Da die API asynchron ist, wird der Aufruf sofort zurückgegeben, auch wenn der Vorgang noch läuft. Wenn ein nachfolgender API-Aufruf das neu erstellte Objekt verwendet, müssen Sie warten, bis der erste Vorgang abgeschlossen ist, bevor Sie fortfahren.
Sie können die Database Migration Service API verwenden, um Vorgänge zu verwalten. Dazu zählen:
Database Migration Service und Google APIs Discovery Service
Google APIs Discovery Service ist ein Dienst, mit dem Sie Google APIs ermitteln können. Wenn Sie beispielsweise das Tool Google APIs Explorer verwenden, verwenden Sie den Discovery Service.
Im Discovery Service wird Database Migration Service als „datamigration“ dargestellt (z. B. https://datamigration.googleapis.com/$discovery/rest?version=v1).