Cloud SQL per SQL Server

Il connettore Cloud SQL per SQL Server ti consente di inserire, leggere, aggiornare ed eliminare righe in un database SQL Server.

Versioni supportate

Versioni di SQL Server: 2008, 2012, 2014, 2016, 2017, 2019 e 2022

Prima di iniziare

Prima di utilizzare il connettore Cloud SQL per SQL Server, svolgi le seguenti attività:

  • Nel tuo progetto Google Cloud:
    • Assicurati che la connettività di rete sia configurata. Per informazioni sui pattern di rete, vedi Connettività di rete.
    • Concedi il ruolo IAM roles/connectors.admin all'utente che configura il connettore.
    • Concedi i seguenti ruoli IAM al account di servizio che vuoi utilizzare per il connettore:
      • roles/secretmanager.viewer
      • roles/secretmanager.secretAccessor
      • roles/cloudsql.editor

      Un account di servizio è un tipo speciale di Account Google destinato a rappresentare un utente non umano che deve eseguire l'autenticazione ed essere autorizzato ad accedere ai dati nelle API di Google. Se non hai un account di servizio, devi crearne uno. Il connettore e il account di servizio devono appartenere allo stesso progetto. Per ulteriori informazioni, vedi Creazione di un service account.

    • Attiva i seguenti servizi:
      • secretmanager.googleapis.com (API Secret Manager)
      • connectors.googleapis.com (API Connectors)

      Per capire come abilitare i servizi, consulta Abilitazione dei servizi.

    Se questi servizi o autorizzazioni non sono stati attivati in precedenza per il tuo progetto, ti viene chiesto di attivarli durante la configurazione del connettore.

  • Abilita il servizio sqladmin.googleapis.com (API Cloud SQL Admin).

Configura il connettore

Una connessione è specifica per un'origine dati. Ciò significa che se hai molte origini dati, devi creare una connessione separata per ciascuna. Per creare una connessione:

  1. Nella console Cloud, vai alla pagina Integration Connectors > Connessioni e poi seleziona o crea un progetto Google Cloud.

    Vai alla pagina Connessioni

  2. Fai clic su + CREA NUOVA per aprire la pagina Crea connessione.
  3. Nella sezione Posizione, scegli la posizione per la connessione.
    1. Regione: seleziona una località dall'elenco a discesa.

      Per l'elenco di tutte le regioni supportate, consulta Località.

    2. Fai clic su AVANTI.
  4. Nella sezione Dettagli connessione, completa quanto segue:
    1. Connettore: seleziona Cloud SQL per SQL Server dall'elenco a discesa dei connettori disponibili.
    2. Versione del connettore: seleziona la versione del connettore dall'elenco a discesa delle versioni disponibili.
    3. Nel campo Nome connessione, inserisci un nome per l'istanza di connessione.

      I nomi delle connessioni devono soddisfare i seguenti criteri:

      • I nomi delle connessioni possono contenere lettere, numeri o trattini.
      • Le lettere devono essere minuscole.
      • I nomi delle connessioni devono iniziare con una lettera e terminare con una lettera o un numero.
      • I nomi delle connessioni non possono superare i 49 caratteri.
    4. (Facoltativo) Inserisci una descrizione per l'istanza di connessione.
    5. (Facoltativo) Abilita Cloud Logging, quindi seleziona un livello di log. Per impostazione predefinita, il livello di log è impostato su Error.
    6. Service Account: seleziona un account di servizio con i ruoli richiesti.
    7. (Facoltativo) Configura le impostazioni del nodo di connessione:

      • Numero minimo di nodi: inserisci il numero minimo di nodi di connessione.
      • Numero massimo di nodi: inserisci il numero massimo di nodi di connessione.

      Un nodo è un'unità (o una replica) di una connessione che elabora le transazioni. Sono necessari più nodi per elaborare più transazioni per una connessione e, viceversa, sono necessari meno nodi per elaborare meno transazioni. Per capire in che modo i nodi influiscono sui prezzi dei connettori, consulta la sezione Prezzi dei nodi di connessione. Se non inserisci alcun valore, per impostazione predefinita i nodi minimi sono impostati su 2 (per una migliore disponibilità) e i nodi massimi sono impostati su 50.

    8. ID progetto: l'ID del progetto Google Cloud in cui si trova l'istanza Cloud SQL.
    9. Regione del database: il nome della regione in cui si trova l'istanza Cloud SQL.
    10. ID istanza: l'ID dell'istanza Cloud SQL a cui connettersi.
    11. Nome database: il nome del database SQL Server a cui connettersi.
    12. (Facoltativo) Fai clic su + AGGIUNGI ETICHETTA per aggiungere un'etichetta alla connessione sotto forma di coppia chiave/valore.
    13. Fai clic su AVANTI.
  5. Nella sezione Destinazioni, inserisci i dettagli dell'host remoto (sistema di backend) a cui vuoi connetterti.
    1. Tipo di destinazione: seleziona un Tipo di destinazione.
      • Per specificare il nome host o l'indirizzo IP di destinazione, seleziona Indirizzo host e inserisci l'indirizzo nel campo Host 1.
      • Per stabilire una connessione privata, seleziona Collegamento endpoint e scegli il collegamento richiesto dall'elenco Collegamento endpoint.

      Se vuoi stabilire una connessione pubblica ai tuoi sistemi di backend con una sicurezza aggiuntiva, puoi valutare la possibilità di configurare indirizzi IP statici in uscita per le tue connessioni e poi configurare le regole firewall per consentire solo gli indirizzi IP statici specifici.

      Per inserire altre destinazioni, fai clic su +AGGIUNGI DESTINAZIONE.

    2. Fai clic su AVANTI.
  6. Nella sezione Autenticazione, inserisci i dettagli di autenticazione.
    1. Seleziona un Tipo di autenticazione e inserisci i dettagli pertinenti.

      I seguenti tipi di autenticazione sono supportati dalla connessione Cloud SQL per SQL Server:

      • Nome utente e password
    2. Per capire come configurare questi tipi di autenticazione, consulta Configurare l'autenticazione.

    3. Fai clic su AVANTI.
  7. Rivedi: rivedi i dettagli di connessione e autenticazione.
  8. Fai clic su Crea.

Configura l'autenticazione

Inserisci i dettagli in base all'autenticazione che vuoi utilizzare.

  • Nome utente e password
    • Nome utente: il nome utente di SQL Server da utilizzare per la connessione.
    • Password: secret di Secret Manager contenente la password associata al nome utente di SQL Server.

Esempi di configurazione della connessione

Tipo di connessione per l'autenticazione di base

Nome campo Dettagli
Località us-central1
Connettore CloudSQL SQL Server
Versione del connettore 1
Nome collegamento cloudsql-server-private
Abilita Cloud Logging
Service account SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
ID progetto connettori-prod-test
Regione del database us-central1
ID istanza google-cloud-bcone-sql-instance1
Nome database sqlcloudprivate_DB
Numero minimo di nodi 2
Numero massimo di nodi 2
Tipo di destinazione Indirizzo host
host HOST
porta PORT
Nome utente NOME UTENTE
Password PASSWORD
Versione secret 1

Limitazioni di sistema

Il connettore Cloud SQL per SQL Server può elaborare un massimo di 30 transazioni al secondo per nodo e limita le transazioni oltre questo limite. Per impostazione predefinita, Integration Connectors alloca due nodi (per una migliore disponibilità) per una connessione.

Per informazioni sui limiti applicabili a Integration Connectors, vedi Limiti.

Utilizzare la connessione Cloud SQL per SQL Server in un'integrazione

Una volta creata la connessione, questa diventa disponibile sia in Apigee Integration che in Application Integration. Puoi utilizzare la connessione in un'integrazione tramite l'attività Connettori.

  • Per capire come creare e utilizzare l'attività Connettori in Apigee Integration, consulta Attività Connettori.
  • Per capire come creare e utilizzare l'attività Connettori in Application Integration, vedi Attività Connettori.

Consulta anche il tutorial Eseguire operazioni CRUD su un database MySQL che mostra come creare una connessione MySQL e utilizzarla in un'integrazione per eseguire operazioni di lettura e scrittura.

Tipi di dati supportati

Di seguito sono riportati i tipi di dati supportati per questo connettore:

  • BIGINT
  • BINARY
  • BIT
  • BOOLEANO
  • CHAR
  • DATA
  • DECIMALE
  • DOUBLE
  • FLOAT
  • INTEGER
  • LONGN VARCHAR
  • LONG VARCHAR
  • NCHAR
  • NUMERIC
  • NVARCHAR
  • REAL
  • SMALL INT
  • TEMPO
  • TIMESTAMP
  • TINY INT
  • VARBINARY
  • VARCHAR

Azioni

Questa sezione fornisce le azioni disponibili in questo connettore.

Azione Employee_Procedure

Questa azione recupera i dati di un dipendente.

Parametri di input dell'azione Employee_Procedure

Nome parametro Tipo di dati Obbligatorio Descrizione
ID Int Vero L'ID del dipendente.

Per un esempio di come configurare l'azione Employee_Procedure, consulta Esempi di azioni.

Esempi di azioni

Questa sezione fornisce esempi di azioni disponibili in questo connettore.

Esempio: recuperare i dati di un dipendente

  1. Nella finestra di dialogo Configure connector task, fai clic su Actions.
  2. Seleziona l'azione Employee_Procedure, quindi fai clic su Fine.
  3. Nella sezione Input attività dell'attività Connettori, fai clic su connectorInputPayload e poi inserisci un valore simile al seguente nel campo Default Value:
    {
      "ID": 3
    }
    
  4. Se l'azione ha esito positivo, il parametro di risposta connectorOutputPayload dell'attività del connettore avrà un valore simile al seguente:

    [{
      "ID": 3,
      "Name": "Charlie",
      "City": "Paris",
      "SALARY": 6500.0,
      "Department": "IT"
    }]
    

Esempi di operazioni sulle entità

Questa sezione fornisce esempi di operazioni sulle entità disponibili in questo connettore.

Esempio: elenca tutte le persone

  1. Nella finestra di dialogo Configure connector task, fai clic su Entities.
  2. Seleziona Persons dall'elenco Entity.
  3. Seleziona l'operazione List, quindi fai clic su Fine.
  4. Nella sezione Input attività dell'attività Connettori, puoi impostare filterClause in base alle tue esigenze di filtraggio.
  5. Devi utilizzare gli apici singoli ("'") per racchiudere il valore di una filterClause. Puoi utilizzare filterClause per filtrare i record in base alle colonne.

Esempio: recuperare i dettagli di una persona

  1. Nella finestra di dialogo Configure connector task, fai clic su Entities.
  2. Seleziona Persons dall'elenco Entity.
  3. Seleziona l'operazione Get, quindi fai clic su Fine.
  4. Nella sezione Input attività dell'attività Connettori, fai clic su entityId e poi inserisci 1 nel campo Valore predefinito. Questo ID specifica il record da recuperare.

Esempio: eliminare una persona

  1. Nella finestra di dialogo Configure connector task, fai clic su Entities.
  2. Seleziona Persons dall'elenco Entity.
  3. Seleziona l'operazione Delete, quindi fai clic su Fine.
  4. Nella sezione Input attività dell'attività Connettori, fai clic su entityId e poi inserisci 9 nel campo Valore predefinito. Questo ID specifica il record da eliminare.

Esempio: crea una persona

  1. Nella finestra di dialogo Configure connector task, fai clic su Entities.
  2. Seleziona Persons dall'elenco Entity.
  3. Seleziona l'operazione Create, quindi fai clic su Fine.
  4. Nella sezione Input attività dell'attività Connettori, fai clic su connectorInputPayload e poi inserisci un valore simile al seguente nel campo Default Value:
    {
      "LastName": "Charlie",
      "FirstName": "Cruz",
      "Address": "123 Main Street",
      "City": "Paris"
    }
    

    Se l'integrazione ha esito positivo, il parametro di risposta connectorOutputPayload dell'attività del connettore avrà un valore simile al seguente:

    {
      "PersonID": 100.0,
      "LastName": "Charlie",
      "FirstName": "Cruz",
      "Address": "123 Main Street",
      "City": "Paris"
    }
    

Esempio: crea i dettagli del dipendente

  1. Nella finestra di dialogo Configure connector task, fai clic su Entities.
  2. Seleziona SQL_Performance_EmployeeDetails dall'elenco Entity.
  3. Seleziona l'operazione Create, quindi fai clic su Fine.
  4. Nella sezione Input attività dell'attività Connettori, fai clic su connectorInputPayload e poi inserisci un valore simile al seguente nel campo Default Value:
    {
      "ID": 9.0,
      "FirstName": "Alex",
      "LastName": "Ariel",
      "MyDate": "2021-10-22",
      "MyTime": "13:54:19",
      "MySmallDateTime": "2021-10-22 13:54:00.0",
      "MyDateTime": "2021-10-22 13:54:19.057",
      "MyDateTime2": "2021-10-22 13:54:19.055",
      "MyDateTimeOffset": "2021-10-22 13:54:19.055",
      "MyDecimalColumn": 123.0,
      "MyNumericColumn": 12345.12,
      "salary": 4000.0,
      "Location": "Paris",
      "City": "Paris",
      "Designation": "Consultant",
      "Position": "Junior",
      "Experience": 5.0,
      "Emp_Father_Name": "Taylor",
      "Emp_Spouse": "Yuri",
      "Age": 29.0,
      "Celsius": 35.0,
      "Isregistered": "AA==",
      "Data": "{\"name\": \"Raj\",\"skills\": [\"SSIS\", \"SSRS\", \"JS\"],\"Age\": 30}",
      "Emp_Status": "Active",
      "Emp_Department": "IT",
      "Emp_Zip": 121212.0,
      "Sex": "Male",
      "Manager": "Dana",
      "ManagerId": 10.0,
      "Manager_Location": "Paris",
      "HR_Name": "Sasha",
      "Emp_Technology": "SQL",
      "Company_Name": "Altostrat",
      "Company_Location": "Paris",
      "Emp_Degree": "BE",
      "Emp_10TH": "Y",
      "Emp_12TH": "Y",
      "Emp_10Th_Marks": 70.0,
      "Emp_12TH_Marks": 80.0,
      "Emp_Degree_Marks": 90.0,
      "work": "WFH",
      "Emp_Language": "English",
      "Emp_System": "Laptop",
      "Daily_Hrs": 9.0,
      "Week_Days": 5.0,
      "Weekly_Off": 2.0,
      "Client_Name": "Google",
      "Client_Location": "Lisbon",
      "Team_Size": 15.0,
      "Reports_TO": "Manager"
    }
    

    Se l'integrazione ha esito positivo, il parametro di risposta connectorOutputPayload dell'attività del connettore avrà un valore simile al seguente:

    {
      "ID": 9.0,
      "FirstName": "Alex",
      "LastName": "Ariel",
      "City": "Paris",
      "Salary": 4000.0
    }
    

Esempio: crea un dipendente

  1. Nella finestra di dialogo Configure connector task, fai clic su Entities.
  2. Seleziona Employee dall'elenco Entity.
  3. Seleziona l'operazione Create, quindi fai clic su Fine.
  4. Nella sezione Input attività dell'attività Connettori, fai clic su connectorInputPayload e poi inserisci un valore simile al seguente nel campo Default Value:
    {
      "NAME": "Dana",
      "AGE": 30,
      "City": "Lisbon",
      "SALARY": 10000.0
    }
    

    Se l'integrazione ha esito positivo, il parametro di risposta connectorOutputPayload dell'attività del connettore avrà un valore simile al seguente:

    {
      "ID": 88.0,
      "NAME": "Dana",
      "AGE": 30,
      "City": "Lisbon",
      "SALARY": 10000.0
    }
    

Esempio: aggiornare i dettagli di una persona

  1. Nella finestra di dialogo Configure connector task, fai clic su Entities.
  2. Seleziona Persons dall'elenco Entity.
  3. Seleziona l'operazione Update, quindi fai clic su Fine.
  4. Nella sezione Input attività dell'attività Connettori, fai clic su connectorInputPayload e poi inserisci un valore simile al seguente nel campo Default Value:
    {
      "LastName": "Charlie",
      "FirstName": "Cruz",
      "Address": "8 Rue du Nom Fictif",
      "City": "Paris"
    }
    
  5. Nella sezione Input attività dell'attività Connettori, fai clic su entityId e poi inserisci 10 nel campo Valore predefinito. Questo ID specifica il record da aggiornare.

    Anziché specificare entityId, puoi anche impostare filterClause su '10'.

    Se l'integrazione ha esito positivo, il parametro di risposta connectorOutputPayload dell'attività del connettore avrà un valore simile al seguente:

    {
      "LastName": "Charlie",
      "FirstName": "Cruz",
      "Address": "8 Rue du Nom Fictif",
      "City": "Paris"
    }
    

Esempio: aggiornare i dettagli del dipendente

  1. Nella finestra di dialogo Configure connector task, fai clic su Entities.
  2. Seleziona SQL_Performance_EmployeeDetails dall'elenco Entity.
  3. Seleziona l'operazione Update, quindi fai clic su Fine.
  4. Nella sezione Input attività dell'attività Connettori, fai clic su connectorInputPayload e poi inserisci un valore simile al seguente nel campo Default Value:
    {
      "Age": 30
    }
    
  5. Nella sezione Input attività dell'attività Connettori, fai clic su entityId e poi inserisci 5 nel campo Valore predefinito. Questo ID specifica il record da aggiornare.

    Anziché specificare entityId, puoi anche impostare filterClause su '5'.

    Se l'integrazione ha esito positivo, il parametro di risposta connectorOutputPayload dell'attività del connettore avrà un valore simile al seguente:

    {
      "Age": 30
    }
    

Esempio: aggiorna un dipendente

  1. Nella finestra di dialogo Configure connector task, fai clic su Entities.
  2. Seleziona Employee dall'elenco Entity.
  3. Seleziona l'operazione Update, quindi fai clic su Fine.
  4. Nella sezione Input attività dell'attività Connettori, fai clic su connectorInputPayload e poi inserisci un valore simile al seguente nel campo Default Value:
    {
      "AGE": 41,
      "City": "Paris",
      "SALARY": 10000.0
    }
    
  5. Nella sezione Input attività dell'attività Connettori, fai clic su entityId e poi inserisci 2 nel campo Valore predefinito. Questo ID specifica il record da aggiornare.

    Anziché specificare entityId, puoi anche impostare filterClause su '2'.

    Se l'integrazione ha esito positivo, il parametro di risposta connectorOutputPayload dell'attività del connettore avrà un valore simile al seguente:

    {
      "AGE": 41,
      "City": "Paris",
      "SALARY": 10000.0
    }
    

Creare connessioni utilizzando Terraform

Puoi utilizzare la risorsa Terraform per creare una nuova connessione.

Per scoprire come applicare o rimuovere una configurazione Terraform, consulta Comandi Terraform di base.

Per visualizzare un template Terraform di esempio per la creazione di connessioni, consulta template di esempio.

Quando crei questa connessione utilizzando Terraform, devi impostare le seguenti variabili nel file di configurazione Terraform:

Nome parametro Tipo di dati Obbligatorio Descrizione
project_id STRING Vero ID progetto del progetto che contiene l'istanza di Cloud SQL. Ad esempio, myproject.
database_region STRING Vero La regione cloud per l'istanza. Ad esempio, us-central1.
instance_id STRING Vero ID istanza database. Non è incluso l'ID progetto. Ad esempio, myinstance.
database_name STRING Vero Nome del database nell'istanza, ad esempio mydatabase.

Ricevere assistenza dalla community di Google Cloud

Puoi pubblicare le tue domande e discutere di questo connettore nella community di Google Cloud nei forum di Cloud.

Passaggi successivi