Crea un'istanza in una rete privata e poi importa un database

La migrazione di un carico di lavoro da un'altra piattaforma a Cloud SQL per SQL Server spesso comporta l'utilizzo della console Google Cloud per importare i dati da un file di dump SQL che esporti dal tuo ambiente precedente.

Questo tutorial mostra come creare le Google Cloud risorse necessarie e poi importare un database SQL in un'istanza Cloud SQL per SQL Server. Il tutorial illustra le best practice per la migrazione a Cloud SQL per SQL Server, incluso l'utilizzo di una rete Virtual Private Cloud (VPC) con accesso privato ai servizi e l'attivazione dell'IP privato per l'istanza Cloud SQL.

Man mano che procedi con i passaggi, mantieni i valori predefiniti per le impostazioni, a meno che non sia specificato diversamente.

Obiettivi

  1. Scarica un file di dump SQL di esempio.
  2. Crea una nuova rete Virtual Private Cloud con accesso privato ai servizi.
  3. Crea un bucket Cloud Storage e carica un file di dump SQL.
  4. Crea un'istanza Cloud SQL per SQL Server configurata per l'IP privato.
  5. Crea un database di destinazione.
  6. Importa dal file di dump a un nuovo database.
  7. Verifica che l'importazione del database sia riuscita visualizzando la struttura ed eseguendo una query.

Costi

In questo documento vengono utilizzati i seguenti componenti fatturabili di Google Cloud:

Per generare una stima dei costi in base all'utilizzo previsto, utilizza il Calcolatore prezzi.

I nuovi utenti di Google Cloud potrebbero avere diritto a una prova gratuita.

Al termine delle attività descritte in questo documento, puoi evitare l'addebito di ulteriori costi eliminando le risorse che hai creato. Per saperne di più, consulta Esegui la pulizia.

Prima di iniziare

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Se utilizzi un progetto esistente per questa guida, verifica di disporre delle autorizzazioni necessarie per completare la guida. Se hai creato un nuovo progetto, disponi già delle autorizzazioni necessarie.

  4. Verify that billing is enabled for your Google Cloud project.

  5. Enable the Cloud SQL, Cloud SQL Admin, Compute Engine, Cloud Storage APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  6. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  7. Se utilizzi un progetto esistente per questa guida, verifica di disporre delle autorizzazioni necessarie per completare la guida. Se hai creato un nuovo progetto, disponi già delle autorizzazioni necessarie.

  8. Verify that billing is enabled for your Google Cloud project.

  9. Enable the Cloud SQL, Cloud SQL Admin, Compute Engine, Cloud Storage APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  10. Ruoli obbligatori

    Per ottenere le autorizzazioni necessarie per completare questo tutorial, chiedi all'amministratore di concederti i seguenti ruoli IAM nel progetto:

    Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

    Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

    Ottenere un file di dump del database di esempio

    Per questo tutorial, utilizzerai un piccolo database di esempio contenente codici paese e capitali del mondo.

    Scarica il file SQL per il database countries nell'ambiente locale: countries-sqlserver.sql.

    Crea una rete con accesso privato ai servizi

    Prima di creare il resto delle risorse, crea una rete VPC su cui eseguire i servizi. L'accesso privato ai servizi consente di limitare l'accesso al database Cloud SQL stabilendo una connessione privata tra la rete esterna e Cloud SQL per SQL Server utilizzando indirizzi IPv4 interni.

    1. Nella console Google Cloud , vai alla pagina Reti VPC.

      Vai alla pagina Reti VPC

    2. Fai clic su Crea rete VPC.

    3. Nel campo del nome, inserisci tutorial-network.

    4. In Modalità di creazione subnet, seleziona Personalizzata.

    5. Nel campo del nome, inserisci tutorial-subnet.

    6. Seleziona una regione vicina a te.

    7. In Intervallo IPv4, inserisci 10.0.0.0/24.

    8. Per Accesso privato Google, seleziona On.

    9. Fai clic su Fine.

    10. Nella parte inferiore della pagina, fai clic su Crea.

    Al termine del processo di creazione della rete VPC, puoi configurare l'accesso privato ai servizi per la rete.

    1. Nella schermata Reti VPC, fai clic su tutorial-network.
    2. Nella barra dei menu di tutorial-network, fai clic su Accesso privato ai servizi.
    3. Fai clic su Intervalli IP allocati per i servizi.
    4. Fai clic su Assegna intervallo IP.
    5. In Nome, inserisci tutorial-range.
    6. In Intervallo di indirizzi IP, seleziona Personalizzato.
    7. Nel campo Intervallo, inserisci 192.168.0.0/20.
    8. Fai clic su Assegna.
    9. Nel sottomenu, fai clic su Connessioni private ai servizi.
    10. Fai clic su Crea connessione.
    11. Nel menu a discesa Allocazione assegnata, seleziona tutorial-range.
    12. Fai clic su Connetti. Dopo un minuto o due, la console Google Cloud mostra un messaggio che ti informa che hai creato correttamente una connessione privata.

    Crea un bucket Cloud Storage

    Successivamente, crea un bucket Cloud Storage per archiviare il file di dump SQL che hai scaricato in precedenza. Lo strumento di importazione di Cloud SQL prevede che il file di dump si trovi in un bucket. Un bucket Cloud Storage deve avere un nome globalmente univoco.

    1. Nella console Google Cloud , vai alla pagina Bucket in Cloud Storage.

      Vai a Bucket

    2. Fai clic su Crea.
    3. Per il nome del bucket, crea un nome univoco a livello globale composto da lettere minuscole, numeri e trattini. Potresti utilizzare un generatore di stringhe casuali, ad esempio random.org/strings, per generare il nome. Prendi nota del nome che scegli.
    4. Fai clic su Continua.
    5. In Tipo di località, seleziona Regione. Questa è l'opzione più economica.
    6. Scegli la stessa regione che hai scelto per la subnet. Se posizioni le risorseGoogle Cloud nella stessa regione, riduci la latenza, migliori la velocità, abbassi i costi di trasferimento dei dati e semplifichi il networking.
    7. Fai clic su Continua.
    8. Fai clic su Crea.
    9. Se viene visualizzata una finestra di dialogo, lascia selezionata l'opzione Applica la prevenzione dell'accesso pubblico in questo bucket e fai clic su Conferma.

    Si apre la pagina Dettagli bucket del nuovo bucket con il riquadro Oggetti selezionato.

    Carica il file di dump nel bucket

    Carica nel bucket il file di dump SQL di esempio che hai scaricato in precedenza.

    1. Nella scheda Oggetti, fai clic su Carica e poi su Carica file.
    2. Passa al file countries-sqlserver.sql e selezionalo.
    3. Fai clic su Apri. Cloud Storage carica il file di dump nel bucket.

    Crea un'istanza Cloud SQL

    Crea un'istanza Cloud SQL nella console Google Cloud utilizzando le seguenti impostazioni. Per tutte le altre impostazioni, mantieni i valori predefiniti. Sebbene non sia necessario abilitare l'IP privato per il processo di importazione, l'utilizzo dell'IP privato per un carico di lavoro di produzione è una best practice.

    1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud .
      Vai alla pagina Istanze Cloud SQL
    2. Fai clic su Crea istanza.
    3. Fai clic su Scegli SQL Server.
    4. Per Scegli una versione di Cloud SQL, scegli Enterprise.
    5. Per Preset versione, seleziona Sandbox.
    6. In ID istanza, inserisci tutorial-instance.
    7. Scegli e inserisci una password per l'account utente predefinito e salvala per un utilizzo futuro.
    8. Scegli la stessa regione che hai scelto per la subnet e il bucket.
    9. Per Disponibilità a livello di zona, seleziona Zona singola.
    10. Espandi Mostra opzioni di configurazione.
    11. Espandi Connessioni.
    12. Deseleziona IP pubblico.
    13. Seleziona IP privato.
    14. Nel menu a discesa Rete, seleziona tutorial-network. In questo modo, la nuova istanza Cloud SQL viene inserita nella rete privata che hai creato in precedenza.
    15. Fai clic su Crea istanza, quindi attendi l'inizializzazione e l'avvio dell'istanza. Il processo di inizializzazione può richiedere più di cinque minuti.

    Crea un database di destinazione

    Il flusso di lavoro di importazione richiede di selezionare un database di destinazione in cui importare i dati, quindi devi creare un database vuoto.

    1. Nel menu di navigazione SQL, fai clic su Database.
    2. Fai clic su Crea database.
    3. In Nome database, digita countries.
    4. Fai clic su Crea.

    Importa dal file di dump

    Ora puoi importare il database countries utilizzando il file di dump countries-sqlserver.sql che hai caricato nel bucket Cloud Storage.

    1. Nel menu di navigazione SQL, fai clic su Panoramica.
    2. Nella pagina di panoramica, fai clic su Importa.
    3. In Formato file, seleziona SQL.
    4. In Seleziona file di origine, scegli Seleziona file da Google Cloud Storage.
    5. Fai clic su Sfoglia
    6. Espandi il bucket di archiviazione che hai creato in precedenza.
    7. Fai clic su countries-sqlserver.sql.
    8. Fai clic su Seleziona.
    9. Nella sezione Destinazione, fai clic sul menu a discesa Database e poi seleziona Paesi.
    10. Fai clic su Importa.

    Al termine del processo di importazione e dopo l'importazione del database countries in Cloud SQL per SQL Server, viene visualizzato un messaggio di operazione riuscita.

    Convalida i dati importati in Cloud SQL per SQL Server

    Al termine dell'operazione di importazione, puoi verificare che il database sia stato importato connettendoti a esso utilizzando Cloud SQL Studio, esaminando l'elenco delle tabelle ed eseguendo una query di test sui dati.

    Esegui l'autenticazione in Cloud SQL Studio

    Con l'account utente creato in precedenza, connettiti al nuovo database utilizzando Cloud SQL Studio.

    1. Nel menu di navigazione SQL, fai clic su Cloud SQL Studio. Viene visualizzata una finestra di dialogo di accesso.
    2. Nel menu a discesa Database, scegli paesi.
    3. Seleziona Autenticazione del database integrata.
    4. Nel menu a discesa Utente, seleziona sqlserver.
    5. Nel campo Password, inserisci la password che hai specificato quando hai creato l'istanza.
    6. Fai clic su Authenticate (Autentica). Si apre Cloud SQL Studio.

    Visualizzare ed eseguire query sulle tabelle

    1. Nel riquadro Explorer, esamina il database countries e verifica che contenga due tabelle: capitals e country_codes.
    2. Fai clic su Query senza titolo per aprire l'editor query.
    3. Incolla il seguente codice nell'editor di query:

      SELECT
        [capitals].[country_capital],
        [country_codes].[country_name]
      FROM
        [capitals]
      JOIN
        [country_codes]
      ON
        [capitals].[alpha_2_code] = [country_codes].[alpha_2_code]
      ORDER BY
        [capitals].[country_capital];
      
    4. Fai clic su Esegui.

    Il riquadro dei risultati mostra un elenco alfabetico delle capitali del mondo e dei relativi paesi.

    Esegui la pulizia

    Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questo tutorial, esegui una delle seguenti operazioni:

    • Elimina il progetto che contiene le risorse
    • Mantieni il progetto ed elimina le singole risorse.

    Elimina il progetto

    1. In the Google Cloud console, go to the Manage resources page.

      Go to Manage resources

    2. In the project list, select the project that you want to delete, and then click Delete.
    3. In the dialog, type the project ID, and then click Shut down to delete the project.

    Elimina singole risorse

    Se vuoi conservare il progetto, ma evitare addebiti, elimina l'istanza Cloud SQL, il bucket Cloud Storage e la rete VPC che hai creato durante il tutorial.

    Elimina l'istanza Cloud SQL

    Innanzitutto, disattiva la protezione da eliminazione e poi elimina l'istanza Cloud SQL del tutorial:

    1. Nel menu di navigazione SQL, fai clic su Panoramica.
    2. Fai clic su Modifica.
    3. Espandi la sezione Protezione dei dati.
    4. In Protezione da eliminazione dell'istanza, deseleziona tutte le opzioni.
    5. Fai clic su Salva. Al termine dell'operazione, l'opzione Elimina è selezionabile.
    6. Fai clic su Elimina. Viene visualizzata una finestra di dialogo.
    7. Nel campo ID istanza, inserisci tutorial-instance.
    8. Fai clic su Elimina.

    Elimina il bucket Cloud Storage

    Poi, elimina il bucket di archiviazione e i relativi contenuti.

    1. Nel menu di navigazione principale della console Google Cloud , vai a Cloud Storage > Bucket.
    2. Seleziona la casella accanto al nome del bucket che hai creato in precedenza.
    3. Fai clic su Elimina.
    4. Nella finestra di dialogo, conferma l'eliminazione digitando DELETE, quindi fai clic su Elimina.

    Elimina la rete VPC

    Ora che hai eliminato le risorse nella tua rete VPC, puoi eliminare la rete. Prima di poter eliminare la rete VPC, devi eliminare la connessione di peering creata automaticamente quando hai creato la rete VPC.

    1. Nel menu di navigazione principale, vai a Reti VPC > Peering di reti VPC.
    2. Seleziona la casella accanto alla connessione di peering con la rete VPC tutorial-network.
    3. Fai clic su Elimina.
    4. Nella finestra di dialogo, conferma facendo clic su Elimina.

    Ora che la connessione in peering è stata rimossa, puoi eliminare la rete VPC.

    1. Nel menu Rete VPC, fai clic su Reti VPC.
    2. Fai clic su tutorial-network per aprire la pagina dei dettagli.
    3. Fai clic su Elimina rete VPC.
    4. Nella finestra di dialogo, conferma l'eliminazione digitando tutorial-network e poi facendo clic su Elimina.

    Passaggi successivi