Cloud SQL pour SQL Server
Le connecteur Cloud SQL pour SQL Server vous permet d'insérer, de lire, de mettre à jour et de supprimer des lignes dans une base de données SQL Server.
Versions compatibles
Versions SQL Server : 2008, 2012, 2014, 2016, 2017, 2019 et 2022
Avant de commencer
Avant d'utiliser le connecteur Cloud SQL pour SQL Server, effectuez les tâches suivantes :
- Dans votre projet Google Cloud :
- Assurez-vous que la connectivité réseau est configurée. Pour en savoir plus sur les schémas de réseau, consultez Connectivité réseau.
- Attribuez le rôle IAM roles/connectors.admin à l'utilisateur qui configure le connecteur.
- Attribuez les rôles IAM suivants au compte de service que vous souhaitez utiliser pour le connecteur :
roles/secretmanager.viewerroles/secretmanager.secretAccessorroles/cloudsql.editor
Un compte de service est un type spécial de compte Google destiné à représenter un utilisateur non humain qui doit s'authentifier et obtenir les autorisations permettant d'accéder aux données des API Google. Si vous ne possédez pas de compte de service, vous devez en créer un. Le connecteur et le compte de service doivent appartenir au même projet. Pour en savoir plus, consultez Créer un compte de service.
- Activez les services suivants :
secretmanager.googleapis.com(API Secret Manager)connectors.googleapis.com(API Connectors)
Pour savoir comment activer des services, consultez Activer des services.
Si ces services ou autorisations n'ont pas encore été activés pour votre projet, vous êtes invité à les activer au moment de configurer le connecteur.
- Activez le service
sqladmin.googleapis.com(API Cloud SQL Admin).
- Pour en savoir plus sur la création d'une instance Cloud SQL pour SQL Server sur Google Cloud, consultez Créer une instance sur Google Cloud.
- Pour en savoir plus sur la connectivité PSC à l'aide d'un proxy SOCKS5, consultez Connectivité PSC à l'aide d'un proxy SOCKS5.
Configurer le connecteur
Une connexion est propre à une source de données. Cela signifie que si vous disposez de nombreuses sources de données, vous devez créer une connexion distincte pour chacune d'elles. Pour créer une connexion, procédez comme suit :
- Dans la console Cloud, accédez à la page Integration Connectors > Connexions, puis sélectionnez ou créez un projet Google Cloud.
- Cliquez sur + CRÉER pour ouvrir la page Créer une connexion.
- Dans la section Emplacement, choisissez l'emplacement de la connexion.
- Région : sélectionnez un emplacement dans la liste déroulante.
Pour obtenir la liste de toutes les régions disponibles, consultez Emplacements.
- Cliquez sur SUIVANT.
- Région : sélectionnez un emplacement dans la liste déroulante.
- Dans la section Détails de la connexion, procédez comme suit :
- Connecteur : sélectionnez Cloud SQL pour SQL Server dans la liste déroulante des connecteurs disponibles.
- Version du connecteur : sélectionnez la version du connecteur dans la liste déroulante des versions disponibles.
- Dans le champ Nom de connexion, indiquez le nom de l'instance de connexion.
Les noms de connexion doivent répondre aux critères suivants :
- Ils peuvent contenir des lettres, des chiffres ou des traits d'union.
- Les lettres doivent être en minuscules.
- Ils doivent commencer par une lettre et se terminer par une lettre ou un chiffre.
- Ils ne peuvent pas dépasser 49 caractères.
- (Facultatif) Saisissez une description de l'instance de connexion.
- (Facultatif) Activez Cloud Logging, puis sélectionnez un niveau de journalisation. Par défaut, le niveau de journalisation est défini sur
Error. - Compte de service : sélectionnez un compte de service disposant des rôles requis.
- (Facultatif) Configurez les paramètres des nœuds de connexion :
- Nombre minimal de nœuds : saisissez le nombre minimal de nœuds de connexion.
- Nombre maximal de nœuds : saisissez le nombre maximal de nœuds de connexion.
Un nœud est une unité (ou instance répliquée) de connexion qui traite des transactions. Pour traiter davantage de transactions pour une connexion, vous devez disposer de plus de nœuds. À l'inverse, moins de nœuds sont nécessaires si une connexion traite moins de transactions. Pour comprendre comment les nœuds affectent la tarification de votre connecteur, consultez Tarifs des nœuds de connexion. Si vous ne saisissez aucune valeur, le nombre minimal de nœuds est défini par défaut sur 2 (pour améliorer la disponibilité) et le nombre maximal de nœuds sur 50.
- ID du projet : ID du projet Google Cloud où se trouve l'instance Cloud SQL.
- Région de la base de données : nom de la région où se trouve l'instance Cloud SQL.
- ID d'instance : ID de l'instance Cloud SQL à laquelle vous souhaitez vous connecter.
- Nom de la base de données : nom de la base de données SQL Server à laquelle vous souhaitez vous connecter.
- (Facultatif) Cliquez sur + AJOUTER UNE ÉTIQUETTE pour ajouter une étiquette à la connexion sous la forme d'une paire clé/valeur.
- Cliquez sur SUIVANT.
- Dans la section Destinations, saisissez des informations sur l'hôte distant (système backend) auquel vous souhaitez vous connecter.
- Type de destination : sélectionnez un type de destination.
- Pour spécifier le nom d'hôte ou l'adresse IP de la destination, sélectionnez Adresse de l'hôte, puis saisissez l'adresse dans le champ Hôte 1.
- Pour établir une connexion privée, sélectionnez Rattachement de point de terminaison, puis choisissez le rattachement requis dans la liste Rattachement de point de terminaison.
Si vous souhaitez établir une connexion publique à vos systèmes backend avec une sécurité supplémentaire, vous pouvez envisager de configurer des adresses IP sortantes statiques pour vos connexions, puis de configurer vos règles de pare-feu pour ajouter à la liste d'autorisation uniquement les adresses IP statiques spécifiques.
Pour saisir d'autres destinations, cliquez sur + AJOUTER UNE DESTINATION.
- Cliquez sur SUIVANT.
- Type de destination : sélectionnez un type de destination.
-
Dans la section Authentification, saisissez les informations d'authentification.
- Sélectionnez un type d'authentification, puis saisissez les informations appropriées.
Le type d'authentification suivant est compatible avec la connexion Cloud SQL pour SQL Server :
- Nom d'utilisateur et mot de passe
- Cliquez sur SUIVANT.
Pour savoir comment configurer ces types d'authentification, consultez Configurer l'authentification.
- Sélectionnez un type d'authentification, puis saisissez les informations appropriées.
- Vérifier : vérifiez vos informations de connexion et d'authentification.
- Cliquez sur Créer.
Configurer l'authentification
Saisissez les informations en fonction de l'authentification que vous souhaitez utiliser.
- Nom d'utilisateur et mot de passe
- Nom d'utilisateur : nom d'utilisateur du serveur SQL à utiliser pour la connexion
- Mot de passe : secret Secret Manager contenant le mot de passe associé au nom d'utilisateur SQL Server
Exemples de configuration de connexion
Type de connexion avec authentification de base
| Nom du champ | Détails |
|---|---|
| Emplacement | us-central1 |
| Connecteur | Cloud SQL pour SQL Server |
| Version du connecteur | 1 |
| Nom de connexion | cloudsql-server-private |
| Activer Cloud Logging | Oui |
| Compte de service | SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com |
| ID du projet | connectors-prod-test |
| Région de la base de données | us-central1 |
| ID de l'instance | google-cloud-bcone-sql-instance1 |
| Nom de la base de données | sqlcloudprivate_DB |
| Nombre minimal de nœuds | 2 |
| Nombre maximal de nœuds | 2 |
| Type de destination | Adresse de l'hôte |
| Hôte | HOST |
| Port | PORT |
| Nom d'utilisateur | NOM D'UTILISATEUR |
| Mot de passe | MOT DE PASSE |
| Version du secret | 1 |
Limites du système
Le connecteur Cloud SQL pour SQL Server peut traiter jusqu'à 30 transactions par seconde et par nœud, et limite les transactions au-delà de ce seuil. Par défaut, Integration Connectors alloue deux nœuds (pour améliorer la disponibilité) à une connexion.
Pour en savoir plus sur les limites applicables à Integration Connectors, consultez Limites.
Utiliser la connexion Cloud SQL pour SQL Server dans une intégration
Une fois la connexion créée, elle devient disponible dans Apigee Integration et Application Integration. Vous pouvez utiliser la connexion dans une intégration au moyen de la tâche "Connecteurs".
- Pour savoir comment créer et utiliser la tâche "Connecteurs" dans Apigee Integration, consultez Tâche "Connecteurs".
- Pour savoir comment créer et utiliser la tâche "Connecteurs" dans Application Integration, consultez Tâche "Connecteurs".
Consultez également le tutoriel Effectuer des opérations CRUD sur une base de données MySQL, qui explique comment créer une connexion MySQL et comment l'utiliser dans une intégration pour effectuer des opérations de lecture et d'écriture.
Types de données acceptés
Voici les types de données acceptés pour ce connecteur :
- BIGINT
- BINARY
- BIT
- BOOLEAN
- CHAR
- DATE
- DECIMAL
- DOUBLE
- FLOAT
- INTEGER
- LONGN VARCHAR
- LONG VARCHAR
- NCHAR
- NUMERIC
- NVARCHAR
- REAL
- SMALL INT
- TIME
- TIMESTAMP
- TINY INT
- VARBINARY
- VARCHAR
Actions
Cette section présente les actions disponibles dans ce connecteur.
Action Employee_Procedure
Cette action récupère les données d'un employé.
Paramètres d'entrée de l'action Employee_Procedure
| Nom du paramètre | Type de données | Obligatoire | Description |
|---|---|---|---|
| ID | Int | Vrai | ID de l'employé. |
Pour savoir comment configurer l'action Employee_Procedure, consultez Exemples d'actions.
Exemples d'actions
Cette section fournit des exemples d'actions disponibles dans ce connecteur.
Exemple : Récupérer les données d'un employé
- Dans la boîte de dialogue
Configure connector task, cliquez surActions. - Sélectionnez l'action
Employee_Procedure, puis cliquez sur OK. - Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur
connectorInputPayload, puis saisissez une valeur semblable à la suivante dans le champDefault Value:{ "ID": 3 }
Si l'action aboutit, le paramètre de réponse connectorOutputPayload de la tâche "Connecteurs" aura une valeur semblable à la suivante :
[{
"ID": 3,
"Name": "Charlie",
"City": "Paris",
"SALARY": 6500.0,
"Department": "IT"
}]
Exemples d'opérations d'entité
Cette section fournit des exemples d'opérations d'entité disponibles dans ce connecteur.
Exemple : Lister toutes les personnes
- Dans la boîte de dialogue
Configure connector task, cliquez surEntities. - Sélectionnez
Personsdans la listeEntity. - Sélectionnez l'opération
List, puis cliquez sur OK. - Dans la section Entrée de la tâche de la tâche Connecteurs, vous pouvez définir la filterClause selon vos besoins de filtrage.
Vous devez placer la valeur d'une filterClause entre des guillemets simples ('). Vous pouvez utiliser filterClause pour filtrer les enregistrements en fonction des colonnes.
Exemple : Obtenir les informations sur une personne
- Dans la boîte de dialogue
Configure connector task, cliquez surEntities. - Sélectionnez
Personsdans la listeEntity. - Sélectionnez l'opération
Get, puis cliquez sur OK. - Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur entityId, puis saisissez
1dans le champ Valeur par défaut. Cet ID spécifie l'enregistrement à récupérer.
Exemple : Supprimer une personne
- Dans la boîte de dialogue
Configure connector task, cliquez surEntities. - Sélectionnez
Personsdans la listeEntity. - Sélectionnez l'opération
Delete, puis cliquez sur OK. - Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur entityId, puis saisissez
9dans le champ Valeur par défaut. Cet ID spécifie l'enregistrement à supprimer.
Exemple : Créer une personne
- Dans la boîte de dialogue
Configure connector task, cliquez surEntities. - Sélectionnez
Personsdans la listeEntity. - Sélectionnez l'opération
Create, puis cliquez sur OK. - Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur
connectorInputPayload, puis saisissez une valeur semblable à la suivante dans le champDefault Value:{ "LastName": "Charlie", "FirstName": "Cruz", "Address": "123 Main Street", "City": "Paris" }Si l'intégration aboutit, le paramètre de réponse
connectorOutputPayloadde la tâche "Connecteurs" aura une valeur semblable à la suivante :{ "PersonID": 100.0, "LastName": "Charlie", "FirstName": "Cruz", "Address": "123 Main Street", "City": "Paris" }
Exemple : Créer des informations sur un employé
- Dans la boîte de dialogue
Configure connector task, cliquez surEntities. - Sélectionnez
SQL_Performance_EmployeeDetailsdans la listeEntity. - Sélectionnez l'opération
Create, puis cliquez sur OK. - Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur
connectorInputPayload, puis saisissez une valeur semblable à la suivante dans le champDefault 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" }Si l'intégration aboutit, le paramètre de réponse
connectorOutputPayloadde la tâche "Connecteurs" aura une valeur semblable à la suivante :{ "ID": 9.0, "FirstName": "Alex", "LastName": "Ariel", "City": "Paris", "Salary": 4000.0 }
Exemple : Créer un employé
- Dans la boîte de dialogue
Configure connector task, cliquez surEntities. - Sélectionnez
Employeedans la listeEntity. - Sélectionnez l'opération
Create, puis cliquez sur OK. - Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur
connectorInputPayload, puis saisissez une valeur semblable à la suivante dans le champDefault Value:{ "NAME": "Dana", "AGE": 30, "City": "Lisbon", "SALARY": 10000.0 }Si l'intégration aboutit, le paramètre de réponse
connectorOutputPayloadde la tâche "Connecteurs" aura une valeur semblable à la suivante :{ "ID": 88.0, "NAME": "Dana", "AGE": 30, "City": "Lisbon", "SALARY": 10000.0 }
Exemple : Mettre à jour les informations sur une personne
- Dans la boîte de dialogue
Configure connector task, cliquez surEntities. - Sélectionnez
Personsdans la listeEntity. - Sélectionnez l'opération
Update, puis cliquez sur OK. - Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur
connectorInputPayload, puis saisissez une valeur semblable à la suivante dans le champDefault Value:{ "LastName": "Charlie", "FirstName": "Cruz", "Address": "8 Rue du Nom Fictif", "City": "Paris" }Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur entityId, puis saisissez
10 dans le champ Valeur par défaut. Cet ID spécifie l'enregistrement à mettre à jour.
Au lieu de spécifier l'entityId, vous pouvez définir la filterClause sur '10'.
Si l'intégration aboutit, le paramètre de réponse connectorOutputPayload de la tâche "Connecteurs" aura une valeur semblable à la suivante :
{
"LastName": "Charlie",
"FirstName": "Cruz",
"Address": "8 Rue du Nom Fictif",
"City": "Paris"
}
Exemple : Mettre à jour les informations sur un employé
- Dans la boîte de dialogue
Configure connector task, cliquez surEntities. - Sélectionnez
SQL_Performance_EmployeeDetailsdans la listeEntity. - Sélectionnez l'opération
Update, puis cliquez sur OK. - Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur
connectorInputPayload, puis saisissez une valeur semblable à la suivante dans le champDefault Value:{ "Age": 30 }Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur entityId, puis saisissez
5 dans le champ Valeur par défaut. Cet ID spécifie l'enregistrement à mettre à jour.
Au lieu de spécifier l'entityId, vous pouvez définir la filterClause sur '5'.
Si l'intégration aboutit, le paramètre de réponse connectorOutputPayload de la tâche "Connecteurs" aura une valeur semblable à la suivante :
{
"Age": 30
}
Exemple : Mettre à jour un employé
- Dans la boîte de dialogue
Configure connector task, cliquez surEntities. - Sélectionnez
Employeedans la listeEntity. - Sélectionnez l'opération
Update, puis cliquez sur OK. - Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur
connectorInputPayload, puis saisissez une valeur semblable à la suivante dans le champDefault Value:{ "AGE": 41, "City": "Paris", "SALARY": 10000.0 } - Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur entityId, puis saisissez
2dans le champ Valeur par défaut. Cet ID spécifie l'enregistrement à mettre à jour.Au lieu de spécifier l'entityId, vous pouvez définir la filterClause sur
'2'.Si l'intégration aboutit, le paramètre de réponse
connectorOutputPayloadde la tâche "Connecteurs" aura une valeur semblable à la suivante :{ "AGE": 41, "City": "Paris", "SALARY": 10000.0 }
Créer des connexions à l'aide de Terraform
Vous pouvez utiliser la ressource Terraform pour créer une connexion.
Pour savoir comment appliquer ou supprimer une configuration Terraform, consultez Commandes Terraform de base.
Pour afficher un exemple de modèle Terraform permettant de créer une connexion, consultez Exemple de modèle.
Lorsque vous créez cette connexion à l'aide de Terraform, vous devez définir les variables suivantes dans votre fichier de configuration Terraform :
| Nom du paramètre | Type de données | Obligatoire | Description |
|---|---|---|---|
| project_id | STRING | True | ID du projet contenant l'instance Cloud SQL (par exemple, "myproject"). |
| database_region | STRING | True | Région cloud de l'instance (par exemple, "us-central1"). |
| instance_id | STRING | True | ID de l'instance de base de données. Ce paramètre n'inclut pas l'ID du projet (par exemple, "myinstance"). |
| database_name | CHAÎNE | True | Nom de la base de données dans l'instance (par exemple, "mydatabase"). |
Demander de l'aide à la communauté Google Cloud
Vous pouvez publier vos questions et discuter de ce connecteur sur les forums Cloud de la communauté Google Cloud.Étapes suivantes
- Découvrez comment suspendre et reprendre une connexion.
- Découvrez comment surveiller l'utilisation des connecteurs.
- Découvrez comment afficher les journaux des connecteurs.