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.viewer
      • roles/secretmanager.secretAccessor
      • roles/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).

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 :

  1. Dans la console Cloud, accédez à la page Integration Connectors > Connexions, puis sélectionnez ou créez un projet Google Cloud.

    Accéder à la page "Connexions"

  2. Cliquez sur + CRÉER pour ouvrir la page Créer une connexion.
  3. Dans la section Emplacement, choisissez l'emplacement de la connexion.
    1. Région : sélectionnez un emplacement dans la liste déroulante.

      Pour obtenir la liste de toutes les régions disponibles, consultez Emplacements.

    2. Cliquez sur SUIVANT.
  4. Dans la section Détails de la connexion, procédez comme suit :
    1. Connecteur : sélectionnez Cloud SQL pour SQL Server dans la liste déroulante des connecteurs disponibles.
    2. Version du connecteur : sélectionnez la version du connecteur dans la liste déroulante des versions disponibles.
    3. 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.
    4. (Facultatif) Saisissez une description de l'instance de connexion.
    5. (Facultatif) Activez Cloud Logging, puis sélectionnez un niveau de journalisation. Par défaut, le niveau de journalisation est défini sur Error.
    6. Compte de service : sélectionnez un compte de service disposant des rôles requis.
    7. (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.

    8. ID du projet : ID du projet Google Cloud où se trouve l'instance Cloud SQL.
    9. Région de la base de données : nom de la région où se trouve l'instance Cloud SQL.
    10. ID d'instance : ID de l'instance Cloud SQL à laquelle vous souhaitez vous connecter.
    11. Nom de la base de données : nom de la base de données SQL Server à laquelle vous souhaitez vous connecter.
    12. (Facultatif) Cliquez sur + AJOUTER UNE ÉTIQUETTE pour ajouter une étiquette à la connexion sous la forme d'une paire clé/valeur.
    13. Cliquez sur SUIVANT.
  5. Dans la section Destinations, saisissez des informations sur l'hôte distant (système backend) auquel vous souhaitez vous connecter.
    1. 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.

    2. Cliquez sur SUIVANT.
  6. Dans la section Authentification, saisissez les informations d'authentification.
    1. 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
    2. Pour savoir comment configurer ces types d'authentification, consultez Configurer l'authentification.

    3. Cliquez sur SUIVANT.
  7. Vérifier : vérifiez vos informations de connexion et d'authentification.
  8. 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é

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Actions.
  2. Sélectionnez l'action Employee_Procedure, puis cliquez sur OK.
  3. 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 champ Default Value :
    {
      "ID": 3
    }
    
  4. 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

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez Persons dans la liste Entity.
  3. Sélectionnez l'opération List, puis cliquez sur OK.
  4. 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.
  5. 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

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez Persons dans la liste Entity.
  3. Sélectionnez l'opération Get, puis cliquez sur OK.
  4. Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur entityId, puis saisissez 1 dans le champ Valeur par défaut. Cet ID spécifie l'enregistrement à récupérer.

Exemple : Supprimer une personne

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez Persons dans la liste Entity.
  3. Sélectionnez l'opération Delete, puis cliquez sur OK.
  4. Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur entityId, puis saisissez 9 dans le champ Valeur par défaut. Cet ID spécifie l'enregistrement à supprimer.

Exemple : Créer une personne

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez Persons dans la liste Entity.
  3. Sélectionnez l'opération Create, puis cliquez sur OK.
  4. 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 champ Default Value :
    {
      "LastName": "Charlie",
      "FirstName": "Cruz",
      "Address": "123 Main Street",
      "City": "Paris"
    }
    

    Si l'intégration aboutit, le paramètre de réponse connectorOutputPayload de 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é

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez SQL_Performance_EmployeeDetails dans la liste Entity.
  3. Sélectionnez l'opération Create, puis cliquez sur OK.
  4. 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 champ 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"
    }
    

    Si l'intégration aboutit, le paramètre de réponse connectorOutputPayload de 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é

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez Employee dans la liste Entity.
  3. Sélectionnez l'opération Create, puis cliquez sur OK.
  4. 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 champ Default Value :
    {
      "NAME": "Dana",
      "AGE": 30,
      "City": "Lisbon",
      "SALARY": 10000.0
    }
    

    Si l'intégration aboutit, le paramètre de réponse connectorOutputPayload de 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

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez Persons dans la liste Entity.
  3. Sélectionnez l'opération Update, puis cliquez sur OK.
  4. 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 champ Default Value :
    {
      "LastName": "Charlie",
      "FirstName": "Cruz",
      "Address": "8 Rue du Nom Fictif",
      "City": "Paris"
    }
    
  5. 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é

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez SQL_Performance_EmployeeDetails dans la liste Entity.
  3. Sélectionnez l'opération Update, puis cliquez sur OK.
  4. 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 champ Default Value :
    {
      "Age": 30
    }
    
  5. 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é

  1. Dans la boîte de dialogue Configure connector task, cliquez sur Entities.
  2. Sélectionnez Employee dans la liste Entity.
  3. Sélectionnez l'opération Update, puis cliquez sur OK.
  4. 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 champ Default Value :
    {
      "AGE": 41,
      "City": "Paris",
      "SALARY": 10000.0
    }
    
  5. Dans la section Entrée de la tâche de la tâche Connecteurs, cliquez sur entityId, puis saisissez 2 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 '2'.

    Si l'intégration aboutit, le paramètre de réponse connectorOutputPayload de 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