Panoramica
Database Migration Service fornisce un'API REST per amministrare i profili di connessione e i job di migrazione a livello di programmazione. L'API REST è definita dalle risorse associate alla creazione e alla gestione di profili di connessione e job di migrazione. Per informazioni dettagliate su tutte le risorse e i relativi metodi, consulta il riferimento API Database Migration Service.
Quando invii richieste direttamente all'API REST di Database Migration Service, devi creare la forma corretta della richiesta, autorizzarla come utente autenticato ed elaborare le risposte restituite. Molte delle attività descritte in questa documentazione forniscono esempi di API che utilizzano cURL.
Per altri esempi di utilizzo delle API, consulta la pagina relativa alla richiesta nella guida di riferimento dell'API Database Migration Service. Ogni pagina contiene esempi di chiamate all'API in diversi linguaggi di programmazione, nonché un Explorer specifico per le richieste per aiutarti a capire cosa comporta una richiesta ben formata e cosa aspettarti nella risposta.
Utilizzi l'API Database Migration Service anche indirettamente quando utilizzi uno dei seguenti modi per amministrare le istanze:
Google Cloud CLI: un'interfaccia a riga di comando (CLI) che puoi utilizzare per lavorare con le tue istanze.
Google Cloud console: un'interfaccia web grafica.
Il vantaggio di utilizzare questi metodi, in particolare la consoleGoogle Cloud , è che possono semplificare notevolmente l'amministrazione dei profili di connessione e dei job di migrazione (a seconda del caso d'uso). Se hai appena iniziato a utilizzare Database Migration Service, ti consigliamo di iniziare con uno di questi strumenti prima di utilizzare direttamente l'API REST.
Abilita l'API
Per utilizzare l'API Database Migration Service, devi abilitarla:
Console
- Abilita l'API Database Migration Service.
- Seleziona il progetto.
- Seleziona Continua.
gcloud
- Inserisci quanto segue per visualizzare gli ID progetto per i tuoi Google Cloud
progetti:
gcloud projects list
- Imposta il progetto predefinito:
gcloud config set project YOUR_PROJECT_ID
- Abilita l'API Cloud SQL Admin:
gcloud services enable datamigration.googleapis.com
Autorizzazioni
Devi disporre delle autorizzazioni necessarie per utilizzare l'API Database Migration Service. Queste autorizzazioni includono:
- Amministratore della migrazione del database: con questa autorizzazione, un utente ottiene l'accesso a tutte le risorse di Database Migration Service utilizzate per gestire i profili di connessione e i job di migrazione.
- Visualizzatore migrazione database: con questa autorizzazione, un utente ha accesso di sola lettura ai profili di connessione e ai job di migrazione in Database Migration Service.
- Amministratore Cloud SQL: con questa autorizzazione, un utente può creare e gestire profili di connessione e job di migrazione per Cloud SQL in Database Migration Service.
Google Cloud offre Identity and Access Management (IAM), che ti consente di concedere un accesso più granulare a risorse Google Cloud specifiche e impedisce l'accesso indesiderato ad altre risorse. Puoi ottenere e impostare le autorizzazioni per Database Migration Service utilizzando Google Cloud console, i metodi IAM dell'API o Google Cloud CLI. Per saperne di più, consulta Concessione, modifica e revoca dell'accesso alle risorse.
Esempi di API
Per esempi di utilizzo dell'API Database Migration Service con cURL, vedi Gestire i profili di connessione utilizzando l'API e Gestire i job di migrazione utilizzando l'API.
Fornire dati JSON da un file
Quando utilizzi l'API con cURL, fornisci i valori delle proprietà utilizzando la riga di comando. Se utilizzi valori sensibili come password o chiavi di sicurezza, fornirli nella riga di comando comporta un rischio per la sicurezza. Per una maggiore sicurezza, puoi creare un file contenente i dati JSON per la chiamata API e fornire il percorso del file nella riga di comando.
Per fornire dati JSON alla chiamata API cURL da un file:
Crea un file contenente tutto ciò che è racchiuso tra virgolette singole per il campo
--data
.Includi le parentesi graffe, ma non le virgolette singole.
Nella riga di comando, fornisci il percorso del file, preceduto dal carattere
@
, come parametro--data
:--data @<path-to-file>/<filename>
Ad esempio, per creare un profilo di connessione per un database di origine Cloud SQL, puoi creare un file denominato
request.json
con i seguenti contenuti:{ "displayName": "my Cloud SQL connection profile", "mysql": { "host": "10.11.12.13", "port": 5432, "username": "myusername", "password": "mypassword" } }
Quindi, utilizzerai il seguente comando cURL nella riga di comando:
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
Utilizzare chiamate API a lunga esecuzione
Alcune chiamate API, come la creazione di oggetti, possono richiedere un po' di tempo. Poiché l'API è asincrona, la chiamata viene restituita immediatamente, anche se l'operazione è ancora in corso. Se una chiamata API successiva utilizza l'oggetto appena creato, devi attendere il completamento della prima operazione prima di procedere.
Puoi utilizzare l'API Database Migration Service per gestire le operazioni. È incluso quanto segue:
- Visualizzare i dettagli di un'operazione
- Elenco delle operazioni per una regione
- Eliminazione di un'operazione
Database Migration Service e Google APIs Discovery Service
Google APIs Discovery Service è un servizio che puoi utilizzare per scoprire le API di Google. Ad esempio, quando utilizzi lo strumento Explorer API di Google , utilizzi il servizio di rilevamento.
Nel servizio di rilevamento, Database Migration Service è rappresentato come "datamigration" (ad esempio: https://datamigration.googleapis.com/$discovery/rest?version=v1).