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, esegui le seguenti attività:
- Nel tuo progetto Google Cloud:
- Concedi il ruolo IAM roles/connectors.admin all'utente. configurazione del connettore.
- Concedi i seguenti ruoli IAM all'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 una persona non umana utente che deve autenticarsi e avere l'autorizzazione ad accedere ai dati nelle API di Google. Se non hai un account di servizio, devi crearne uno. Per maggiori informazioni le informazioni, vedi Creazione di un account di servizio.
- Attiva i seguenti servizi:
secretmanager.googleapis.com
(API Secret Manager)connectors.googleapis.com
(API Connectors)
Per informazioni su come attivare i servizi, consulta Abilitazione dei servizi.
Se questi servizi o autorizzazioni non sono stati abilitati in precedenza per il tuo progetto, ti viene chiesto di abilitarli durante la configurazione del connettore.
- Attiva il servizio
sqladmin.googleapis.com
(API Cloud SQL Admin).
- Per informazioni sulla creazione di un'istanza Cloud SQL per SQL Server su Google Cloud, consulta Creare un'istanza su Google Cloud.
- Per informazioni sulla connettività PSC mediante il proxy SOCKS5, consulta Connettività PSC mediante il proxy SOCKS5.
Configura il connettore
Per configurare il connettore è necessario creare una connessione al tuo origine dati (sistema di backend). Una connessione è specifica per un'origine dati. it significa che se hai molte origini dati, devi creare una connessione separata per ogni origine dati. Per creare una connessione:
- Nella console Cloud, vai a Connettori di integrazione > Pagina Connessioni e poi selezionare o creare un progetto Google Cloud.
- Fai clic su + CREA NUOVO per aprire la pagina Crea connessione.
- Nella sezione Località, scegli la località della connessione.
- Regione: seleziona una località dall'elenco a discesa.
Per l'elenco di tutte le regioni supportate, consulta Località.
- Fai clic su AVANTI.
- Regione: seleziona una località dall'elenco a discesa.
- Nella sezione Dettagli connessione, completa quanto segue:
- Connettore: seleziona Cloud SQL per SQL Server dall'elenco a discesa dei connettori disponibili.
- Versione connettore: seleziona la versione del connettore dall'elenco a discesa delle versioni disponibili.
- 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 contenere più di 49 caratteri.
- (Facoltativo) Inserisci una Descrizione per l'istanza di connessione.
- Facoltativamente, abilita Cloud Logging,
e poi seleziona un livello di log. Per impostazione predefinita, il livello di log è impostato su
Error
. - Account di servizio: seleziona un account di servizio con i ruoli richiesti.
- (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, al contrario, meno nodi per elaborare meno transazioni. Per capire in che modo i nodi influiscono sui prezzi dei connettori, consulta Prezzi per i nodi di connessione. Se non inserisci alcun valore, per impostazione predefinita il numero minimo di nodi è impostato su 2 (per una migliore disponibilità) e il numero massimo di nodi è impostato su 50.
- ID progetto: l'ID del progetto Google Cloud in cui si trova l'istanza Cloud SQL.
- Regione database: il nome della regione in cui si trova l'istanza Cloud SQL.
- ID istanza: l'ID dell'istanza Cloud SQL a cui connettersi.
- Nome database: il nome del database SQL Server a cui connettersi.
- Se vuoi, fai clic su + AGGIUNGI ETIQUETTA per aggiungere un'etichetta alla connessione sotto forma di coppia chiave/valore.
- Fai clic su AVANTI.
- Nella sezione Destinazioni, inserisci i dettagli dell'host remoto (sistema di backend) a cui vuoi connetterti.
- Tipo di destinazione: seleziona un Tipo di destinazione.
- Seleziona Indirizzo host dall'elenco per specificare il nome host o l'indirizzo IP della destinazione.
- Se vuoi stabilire una connessione privata ai tuoi sistemi di backend, seleziona Allegato endpoint dall'elenco, quindi seleziona l'allegato endpoint richiesto dall'elenco Allegato endpoint.
Se vuoi stabilire una connessione pubblica ai tuoi sistemi di backend con maggiore sicurezza, puoi valuta la possibilità di configurare una rete statica in uscita indirizzi IP per le tue connessioni, quindi configura le regole del firewall per inserire nella lista consentita solo gli indirizzi IP statici specifici.
Per inserire destinazioni aggiuntive, fai clic su + AGGIUNGI DESTINAZIONE.
- Fai clic su AVANTI.
- Tipo di destinazione: seleziona un Tipo di destinazione.
-
Nella sezione Autenticazione, inserisci i dettagli di autenticazione.
- Seleziona un Tipo di autenticazione e inserisci i dettagli pertinenti.
La connessione Cloud SQL per SQL Server supporta i seguenti tipi di autenticazione:
- Nome utente e password
- Fai clic su AVANTI.
Per informazioni su come configurare questi tipi di autenticazione, consulta l'articolo Configurare l'autenticazione.
- Seleziona un Tipo di autenticazione e inserisci i dettagli pertinenti.
- Rivedi: controlla i dettagli di connessione e autenticazione.
- Fai clic su Crea.
Configura autenticazione
Inserisci i dettagli in base all'autenticazione che vuoi utilizzare.
-
Nome utente e password
- Nome utente: il nome utente SQL Server da utilizzare per la connessione.
- Password: il secret di Secret Manager contenente la password associata al nome utente di SQL Server.
Esempi di configurazione delle connessioni
Tipo di connessione 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 | Sì |
Account di servizio | SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com |
ID progetto | connectors-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 |
Entità, operazioni e azioni
Tutti i connettori di integrazione forniscono un livello di astrazione per gli oggetti l'applicazione connessa. Puoi accedere agli oggetti di un'applicazione solo tramite questa astrazione. L'astrazione ti viene esposta sotto forma di entità, operazioni e azioni.
- Entità: un'entità può essere considerata un oggetto o un insieme di proprietà nel
un'applicazione o un servizio connesso. La definizione di un'entità differisce da un connettore
di rete. Ad esempio, in un connettore di database le tabelle sono le entità, in un connettore di file server le cartelle sono le entità e in un connettore di sistema di messaggistica le code sono le entità.
Tuttavia, è possibile che un connettore non supporti o non disponga di entità. In questo caso, L'elenco
Entities
sarà vuoto. - Operazione: un'operazione è l'attività che è possibile eseguire su un'entità. Puoi eseguire su un'entità una delle seguenti operazioni:
Selezionando un'entità dall'elenco disponibile, viene generato un elenco di operazioni disponibili per l'entità. Per una descrizione dettagliata delle operazioni, consulta le operazioni sulle entità dell'attività Connettori. Tuttavia, se un connettore non supporta nessuna delle operazioni sulle entità, queste operazioni non supportate non sono elencate nell'elenco
Operations
. - Azione: un'azione è una funzione di prima classe resa disponibile all'integrazione tramite l'interfaccia del connettore. Un'azione consente di apportare modifiche a una o più entità
variano da connettore a connettore. Normalmente, un'azione ha alcuni parametri di input e un output
. Tuttavia, è possibile
che un connettore non supporta alcuna azione, nel qual caso l'elenco
Actions
sarà vuoto.
Limitazioni di sistema
Il connettore Cloud SQL per SQL Server può elaborare un massimo di 30 transazioni al secondo, per nodo e throttles eventuali 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 diventa disponibile sia nell'integrazione Apigee sia nell'integrazione delle applicazioni. Puoi utilizzare la connessione in un'integrazione tramite l'attività Connettori.
- Per capire come creare e utilizzare l'attività Connectors in Apigee Integration, vedi Attività connettori.
- Per capire come creare e utilizzare l'attività Connettori in Application Integration, vedi Attività connettori.
Inoltre, vedi il tutorial Eseguire operazioni CRUD su un database MySQL che mostra come creare una connessione MySQL e come utilizzare la connessione 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
- CARATTERE
- DATA
- DECIMALE
- DOPPIO
- FLOAT
- INTEGER
- LONGN VARCHAR
- VARCAR LUNGO
- NCHAR
- NUMERICO
- NVARCHAR
- REALE
- INT PICCOLO
- TEMPO
- TIMESTAMP
- TINY INT
- VARBINARIO
- VARCHAR
Azioni
Questo connettore supporta l'esecuzione delle seguenti azioni:
- stored procedure e funzioni definite dall'utente. Se nel tuo backend sono presenti procedure e funzioni memorizzate, queste sono elencate
nella colonna
Actions
della finestra di dialogoConfigure connector task
. - Query SQL personalizzate. Per eseguire query SQL personalizzate, il connettore fornisce l'azione Esegui query personalizzata.
Per creare una query personalizzata:
- Segui le istruzioni dettagliate per aggiungere un'attività di connettori.
- Quando configuri l'attività del connettore, seleziona Azioni nel tipo di azione che vuoi eseguire.
- Nell'elenco Azione, seleziona Esegui query personalizzata, quindi fai clic su Fine.
- Espandi la sezione Input attività, quindi procedi nel seguente modo:
- Nel campo Timeout dopo, inserisci il numero di secondi di attesa prima che la query venga eseguita.
Valore predefinito:
180
secondi. - Nel campo Numero massimo di righe, inserisci il numero massimo di righe da restituire dal database.
Valore predefinito:
25
. - Per aggiornare la query personalizzata, fai clic su Modifica script personalizzato. Viene visualizzata la finestra di dialogo Editor di script.
- Nella finestra di dialogo Editor di script, inserisci la query SQL e fai clic su Salva.
Puoi utilizzare un punto interrogativo (?) in un'istruzione SQL per rappresentare un singolo parametro che deve essere specificato nell'elenco dei parametri di ricerca. Ad esempio, la seguente query SQL seleziona tutte le righe della tabella
Employees
che corrispondono ai valori specificati per la colonnaLastName
:SELECT * FROM Employees where LastName=?
- Se hai utilizzato punti interrogativi nella query SQL, devi aggiungere il parametro facendo clic su + Aggiungi nome parametro per ogni punto interrogativo. Durante l'esecuzione dell'integrazione, questi parametri sostituiscono in sequenza i punti interrogativi (?) nella query SQL. Ad esempio, se hai aggiunto tre punti interrogativi (?), devi aggiungere tre parametri in ordine sequenziale.
Per aggiungere i parametri di query:
- Nell'elenco Tipo, seleziona il tipo di dati del parametro.
- Nel campo Valore, inserisci il valore del parametro.
- Per aggiungere più parametri, fai clic su + Aggiungi parametro di query.
- Nel campo Timeout dopo, inserisci il numero di secondi di attesa prima che la query venga eseguita.
Esempi di azioni
Esempio: trova il valore maggiore
Questo esempio mostra come eseguire una funzione definita dall'utente. La funzione find_greater
in questo esempio confronta due numeri interi e restituisce il numero intero maggiore.
- Nella finestra di dialogo
Configure connector task
, fai clic suActions
. - Seleziona l'azione
find_greater
e fai clic su Fine. - Nella sezione Input attività dell'attività Connettori, fai clic su
connectorInputPayload
e poi inserisci un valore simile al seguente nel campoDefault Value
:{ "$1": 1.0, "$2": 5.0 }
Se l'esecuzione dell'azione ha esito positivo, il valore connectorOutputPayload
dell'attività del connettore
avrà un valore simile al seguente:
[{ "bignum": 5.0 }]
Esempi di operazioni sulle entità
Esempio: elenca i record di un'entità
In questo esempio sono elencati i record dell'entità Users
.
- Nella finestra di dialogo
Configure connector task
, fai clic suEntities
. - Seleziona
Users
dall'elencoEntity
. - Seleziona l'operazione
List
e poi fai clic su Fine. - Nella sezione Input attività dell'attività Connettori, puoi impostare il valore
filterClause in base alle tue esigenze.
Ad esempio, impostando la clausola di filtro su
employeeCode='5100' and startDate='2010-01-01 00:00:00'
, vengono elencati solo i record il cui codice dipendente è 5100 e la data di inizio è 01-01-2010 00:00:00.
Esempio: recupero di un singolo record da un'entità
Questo esempio recupera un record dall'entità Users
.
- Nella finestra di dialogo
Configure connector task
, fai clic suEntities
. - Seleziona
User
dall'elencoEntity
. - Seleziona l'operazione
Get
e poi fai clic su Fine. - Nella sezione Input attività dell'attività Connettori, fai clic su entityId e
quindi inserisci
103032
nel campo Valore predefinito.In questo caso,
103032
è il valore della chiave primaria dell'entitàUsers
.
Esempio: elimina un record da un'entità
Questo esempio elimina un record dall'entità Users
.
- Nella finestra di dialogo
Configure connector task
, fai clic suEntities
. - Seleziona
Users
dall'elencoEntity
. - Seleziona l'operazione
Delete
e poi fai clic su Fine. - Nella sezione Input dell'attività dell'attività Connettori, fai clic su entityId e poi inserisci
113132
nel campo Valore predefinito.In alternativa, se l'entità ha chiavi primarie composite, anziché specificare entityId, puoi impostare filterClause. Ad esempio:
employeeCode='5100' and startDate='2010-01-01 00:00:00'
.
Esempio: creare un record in un'entità
Questo esempio crea un record nell'entità Users
.
- Nella finestra di dialogo
Configure connector task
, fai clic suEntities
. - Seleziona
Users
dall'elencoEntity
. - Seleziona l'operazione
Create
e fai clic su Fine. - Nella sezione Input attività dell'attività Connettori, fai clic su
connectorInputPayload
e poi inserisci un valore simile al seguente nel campoDefault Value
:{ "employeeCode": "5100", "startDate": "2010-01-01 00:00:00.0", "country": "US" }
Se l'integrazione è riuscita, il campo connectorOutputPayload
dell'attività del connettore conterrà la risposta dell'operazione di creazione.
Esempio: aggiornare un record in un'entità
Questo esempio aggiorna un record nell'entità Users
.
- Nella finestra di dialogo
Configure connector task
, fai clic suEntities
. - Seleziona
Users
dall'elencoEntity
. - Seleziona l'operazione
Update
e fai clic su Fine. - Nella sezione Input attività dell'attività Connettori, fai clic su
connectorInputPayload
e poi inserisci un valore simile al seguente nel campoDefault Value
:{ "country": "IN" }
- Nella sezione Input dell'attività dell'attività Connettori, fai clic su entityId e poi inserisci
113132
nel campo Valore predefinito.In alternativa, se l'entità ha chiavi primarie composite, anziché specificare entityId, puoi impostare filterClause. Ad esempio:
employeeCode='5100' and startDate='2010-01-01 00:00:00'
.
Se l'integrazione è riuscita, il campo connectorOutputPayload
dell'attività del connettore conterrà la risposta dell'operazione di aggiornamento.
Utilizzare Terraform per creare connessioni
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 modello Terraform di esempio per la creazione di connessioni, vedi il modello di esempio.
Quando crei questa connessione utilizzando Terraform, devi impostare le seguenti variabili nel file di configurazione di Terraform:
Nome parametro | Tipo di dati | Obbligatorio | Descrizione |
---|---|---|---|
project_id | STRING | Vero | ID del progetto che contiene l'istanza Cloud SQL. ad es. progetto. |
database_region | STRING | Vero | La regione cloud per l'istanza. ad es. us-central1. |
instance_id | STRING | Vero | ID istanza database. Non è incluso l'ID progetto. ad es. myinstance. |
database_name | STRING | Vero | Nome del database nell'istanza, ad esempio mydatabase. |
Ricevere assistenza dalla community Google Cloud
Puoi pubblicare le tue domande e discutere di questo connettore nella community Google Cloud ai forum Cloud.Passaggi successivi
- Scopri come sospendere e ripristinare una connessione.
- Scopri come monitorare l'utilizzo dei connettori.
- Scopri come visualizzare i log del connettore.