Panoramica
Database Migration Service fornisce un'API REST per amministrare i profili di connessione e i job di migrazione in modo programmatico. 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 all'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 eventuali risposte restituite. Molte delle attività in questa documentazione forniscono esempi di API che utilizzano cURL.
Per altri esempi di utilizzo delle API, consulta la pagina relativa alla richiesta nel riferimento all'API Database Migration Service. Ogni pagina contiene esempi di chiamate all'API in diversi linguaggi di programmazione, nonché un esploratore specifico per le richieste che ti aiuta a capire cosa viene inserito in una richiesta ben formattata 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 gestire le tue istanze.
Google Cloud console: un'interfaccia web grafica.
Il vantaggio dell'utilizzo di questi metodi, in particolare della consoleGoogle Cloud , è che possono semplificare notevolmente l'amministrazione dei profili di connessione e dei job di migrazione (a seconda del caso d'uso). Se stai appena iniziando a utilizzare Database Migration Service, ti consigliamo di iniziare con uno di questi strumenti prima di lavorare direttamente con l'API REST.
Abilita l'API
Per utilizzare l'API Database Migration Service, devi attivarla:
Console
- Abilita l'API Database Migration Service.
- Seleziona il progetto.
- Seleziona Continua.
gcloud
- Inserisci quanto segue per visualizzare gli ID progetto per i tuoi progetti Google Cloud:
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 di Database Migration: 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 di migrazione del 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 di impedire l'accesso indesiderato ad altre risorse. Puoi ottenere e impostare le autorizzazioni per Database Migration Service utilizzando la console Google Cloud, i metodi IAM dell'API o lGoogle Cloud CLI. Per ulteriori informazioni, vedi Concessione, modifica e revoca dell'accesso alle risorse.
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 sulla riga di comando rappresenta 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 sulla riga di comando.
Per fornire dati JSON alla chiamata API cURL da un file:
Crea un file contenente tutto ciò che è racchiuso tra virgolette 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 destinazione 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, utilizza 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 le chiamate API a lunga esecuzione
Alcune chiamate API, come la creazione di oggetti, possono richiedere del 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:
- Visualizzazione dei dettagli di un'operazione
- Operazioni sulle schede per una regione
- Eliminare un'operazione
Database Migration Service e Google APIs Discovery Service
Google APIs Discovery Service è un servizio che puoi utilizzare per trovare le API di Google. Ad esempio, quando utilizzi lo strumento Explorer API di Google , utilizzi il servizio Discovery.
In Discovery Service, Database Migration Service è rappresentato come "datamigration" (ad esempio: https://datamigration.googleapis.com/$discovery/rest?version=v1).