Panoramica
In questa pagina scoprirai come utilizzare l'API Database Migration Service per gestire i profili di connessione per un database di origine PostgreSQL e una destinazione AlloyDB.
Puoi utilizzare l'API Database Migration Service in due modi. Puoi effettuare chiamate all'API REST o utilizzare Google Cloud CLI (interfaccia a riga di comando).
Per informazioni di alto livello sull'utilizzo di gcloud
per gestire i profili di connessione di Database Migration Service, fai clic qui.
Crea un profilo di connessione per un database di origine PostgreSQL
Di seguito è riportata una richiesta di creazione di un profilo di connessione per un database di origine PostgreSQL.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- project-id: l'ID progetto
- region: la regione del progetto
- connection-profile-id: l'ID profilo di connessione
- connection-profile-display-name: il nome visualizzato del profilo di connessione
- host-ip-address: l'indirizzo IP di origine
- username: il nome utente del database
- password: la password dell'utente del database
Metodo HTTP e URL:
POST https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles?connectionProfileId=connection-profile-id
Corpo JSON della richiesta:
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles?connectionProfileId=connection-profile-id "
PowerShell (Windows)
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles?connectionProfileId=connection-profile-id " | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/project-id /locations/region /operations/operation-1591973161667-5a7e422cb0ba4-3004980d-2ae97165", "metadata": { "@type": "type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata", "createTime": "2020-06-12T14:46:01.744267779Z", "target": "projects/project-id /locations/region /connectionProfiles/connection-profile-id ", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Per informazioni di alto livello sull'utilizzo di gcloud
per creare profili di connessione di Database Migration Service, fai clic qui.
Dopo la creazione, puoi visualizzare le informazioni sul tuo profilo di connessione chiamando il metodo connectionProfiles/get
.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- project-id: l'ID progetto
- region: la regione del progetto
- connection-profile-id: l'ID profilo di connessione
Metodo HTTP e URL:
GET https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles/connection-profile-id
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Esegui questo comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles/connection-profile-id "
PowerShell (Windows)
Esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles/connection-profile-id " | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Per ulteriori informazioni sull'utilizzo di gcloud
per recuperare informazioni sul profilo di connessione, fai clic qui.
Creare un profilo di connessione per un database di origine Cloud SQL per PostgreSQL
Di seguito è riportata una richiesta di creazione di un profilo di connessione per un database di origine Cloud SQL per PostgreSQL. Questo esempio utilizza un profilo di connessione PostgreSQL perché si connette al motore del database PostgreSQL e non al livello di gestione Cloud SQL.
Per creare l'accoppiamento tra l'origine e la replica utilizzando Cloud SQL, devi fornire l'ID istanza per il tuo database Cloud SQL. Puoi trovare il valore dell'ID istanza utilizzando il metodo
databases/list
dell'API Cloud SQL Admin.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- project-id: l'ID progetto
- region: la regione del progetto
- connection-profile-id: l'ID profilo di connessione
- connection-profile-display-name: il nome visualizzato del profilo di connessione
- host-ip-address: l'indirizzo IP di origine
- username: il nome utente del database
- password: la password dell'utente del database
- cloud-sql-instance-id: l'ID istanza Cloud SQL
Metodo HTTP e URL:
POST https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles?connectionProfileId=connection-profile-id
Corpo JSON della richiesta:
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles?connectionProfileId=connection-profile-id "
PowerShell (Windows)
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles?connectionProfileId=connection-profile-id " | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/project-id /locations/region /operations/operation-1591973161667-5a7e422cb0ba4-3004980d-2ae97165", "metadata": { "@type": "type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata", "createTime": "2020-06-12T14:46:01.744267779Z", "target": "projects/project-id /locations/region /connectionProfiles/connection-profile-id ", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Per informazioni di alto livello sull'utilizzo di gcloud
per creare profili di connessione di Database Migration Service, fai clic qui.
Creare un profilo di connessione per una destinazione AlloyDB per PostgreSQL
Di seguito è riportata una richiesta di creazione di un profilo di connessione per una destinazione AlloyDB per PostgreSQL. Database Migration Service utilizza le informazioni in questa richiesta per creare una nuova istanza AlloyDB.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- project-id: l'ID progetto
- region: la regione del progetto
- connection-profile-id: l'ID profilo di connessione
- connection-profile-display-name: il nome visualizzato del profilo di connessione
- cluster-id: l'ID del cluster AlloyDB da creare
- user: il nome utente da assegnare all'utente iniziale
- password: la password da assegnare all'utente iniziale
- vpc-network: la rete VPC a cui verrà connesso il cluster AlloyDB
- instance-id: l'ID istanza AlloyDB da creare
- cpu-count: il numero di CPU con cui configurare l'istanza
Tutti i dati archiviati in Google Cloud vengono criptati at-rest utilizzando gli stessi sistemi di gestione delle chiavi rafforzati che utilizziamo per i nostri dati criptati. Questi sistemi di gestione delle chiavi forniscono controlli e verifiche rigorosi dell'accesso alle chiavi e criptano i dati at-rest degli utenti utilizzando gli standard di crittografia AES-256. Non è richiesta alcuna installazione, configurazione o gestione.La crittografia lato client predefinita di Google Cloudè la scelta migliore per gli utenti che non hanno requisiti specifici relativi alla conformità o alla località del materiale crittografico.
Metodo HTTP e URL:
POST https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles?connectionProfileId=connection-profile-id
Corpo JSON della richiesta:
{ "displayName": "connection-profile-display-name ", "alloydb": { "cluster_id": "cluster-id " "settings": { "initial_user": { "user": "user ", "password": "password ", } "vpc_network": "vpc-network ", "primary_instance_settings": { "id": "instance-id ", "machine_config": { "cpu_count":cpu-count } } } } }
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles?connectionProfileId=connection-profile-id "
PowerShell (Windows)
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles?connectionProfileId=connection-profile-id " | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/project-id /locations/region /operations/operation-1591975557292-5a7e4b195623c-e350e3da-713dee7d", "metadata": { "@type": "type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata", "createTime": "2020-06-12T15:25:57.430715421Z", "target": "projects/project-id /locations/region /connectionProfiles/connection-profile-id ", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Per informazioni di alto livello sull'utilizzo di gcloud
per creare profili di connessione di Database Migration Service, fai clic qui.
Visualizzare le informazioni su un profilo di connessione
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- project-id: l'ID progetto
- region: la regione del progetto
- connection-profile-id: l'ID profilo di connessione
Metodo HTTP e URL:
GET https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles/connection-profile-id
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Esegui questo comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles/connection-profile-id "
PowerShell (Windows)
Esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles/connection-profile-id " | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Per ulteriori informazioni sull'utilizzo di gcloud
per recuperare informazioni sul profilo di connessione, fai clic qui.
Elenca i profili di connessione
Di seguito è riportata una richiesta per recuperare informazioni su tutti i tuoi profili di connessione.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- project-id: l'ID progetto
- region: la regione del progetto
orderBy:
Utilizza questo filtro per recuperare un elenco di tutti i profili di connessione per una determinata regione in ordine alfabetico. Ad esempio, il filtroorderBy=name
restituisce tutti i profili di connessione in ordine alfabetico per nome.-
pageSize:
Utilizza questo filtro per specificare il numero massimo di profili di connessione che Database Migration Service recupera e mostra in una pagina. Ad esempio, impostandopageSize=10
, Database Migration Service restituirà fino a 10 profili di connessione per una pagina.
Se sono presenti più di 10 profili di connessione, questi vengono visualizzati in altre pagine. Alla fine di ogni pagina vengono visualizzati un parametro nextPageToken
e un identificatore univoco. Utilizza l'identificatore per recuperare l'elenco dei profili di connessione per la pagina seguente.
Metodo HTTP e URL:
GET https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Esegui questo comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles"
PowerShell (Windows)
Esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
Per ulteriori informazioni sull'utilizzo di gcloud
per recuperare informazioni su tutti i tuoi profili di connessione, fai clic qui.
Aggiornare un profilo di connessione
Di seguito è riportata una richiesta di aggiornamento dei campi Nome utente e Password di un profilo di connessione esistente. Se utilizzi il parametro updateMask
nella richiesta,
solo questi campi devono essere inclusi nel corpo della richiesta.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- project-id: l'ID progetto
- region: la regione del progetto
- connection-profile-id: l'ID profilo di connessione
- username: il nome utente del database
- password: la password dell'utente del database
Metodo HTTP e URL:
PATCH
Corpo JSON della richiesta:
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
""
PowerShell (Windows)
Salva il corpo della richiesta in un file denominato request.json
,
quindi esegui il comando seguente:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/project-id /locations/region /operations/operation-1591973161667-5a7e422cb0ba4-3004980d-2ae97165", "metadata": { "@type": "type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata", "createTime": "2020-06-12T14:46:01.744267779Z", "target": "projects/project-id /locations/region /connectionProfiles/connection-profile-id ", "verb": "update", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Per ulteriori informazioni sull'utilizzo di gcloud
per aggiornare il profilo di connessione, fai clic qui.
Eliminazione di un profilo di connessione
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- project-id: l'ID progetto
- region: la regione del progetto
- connection-profile-id: l'ID profilo di connessione
Metodo HTTP e URL:
DELETE https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles/connection-profile-id
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Esegui questo comando:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles/connection-profile-id "
PowerShell (Windows)
Esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles/connection-profile-id " | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/project-id /locations/region /operations/operation-1591973161667-5a7e422cb0ba4-3004980d-2ae97165", "metadata": { "@type": "type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata", "createTime": "2020-06-12T14:46:01.744267779Z", "target": "projects/project-id /locations/region /connectionProfiles/connection-profile-id ", "verb": "delete", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Per saperne di più sull'utilizzo di gcloud
per eliminare il profilo di connessione, fai clic qui.
Eliminare un profilo di connessione e l'istanza AlloyDB associata
Di seguito è riportata una richiesta di eliminazione di un profilo di connessione di destinazione, nonché l'eliminazione in cascata dell'istanza AlloyDB associata.
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
- project-id: l'ID progetto
- region: la regione del progetto
- connection-profile-id: l'ID profilo di connessione
Metodo HTTP e URL:
DELETE https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles/connection-profile-id ?force=true
Per inviare la richiesta, espandi una di queste opzioni:
curl (Linux, macOS o Cloud Shell)
Esegui questo comando:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles/connection-profile-id ?force=true"
PowerShell (Windows)
Esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://datamigration.googleapis.com/v1/projects/project-id /locations/region /connectionProfiles/connection-profile-id ?force=true" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/project-id /locations/region /operations/operation-1591973161667-5a7e422cb0ba4-3004980d-2ae97165", "metadata": { "@type": "type.googleapis.com/google.cloud.clouddms.v1.OperationMetadata", "createTime": "2020-06-12T14:46:01.744267779Z", "target": "projects/project-id /locations/region /connectionProfiles/connection-profile-id ", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Per ulteriori informazioni sull'utilizzo di gcloud
per eliminare sia il profilo di connessione sia l'istanza AlloyDB associata, fai clic qui.