Se connecter à Microsoft SQL Server depuis ArcGIS

La liste suivante récapitule les étapes requises pour se connecter d’ArcGIS à une base de données Microsoft SQL Server, y compris une base de données contenant une géodatabase :

Configurer l’instance pour qu’elle accepte les connexions

Par défaut, les instances SQL Server ne sont pas configurées pour autoriser des connexions à partir d’autres ordinateurs. En présence d’une nouvelle installation de SQL Server, vérifiez que le service SQL Server est actif et qu’il écoute sur les ports appropriés. Pour plus d’informations, reportez-vous à la documentation Microsoft SQL Server.

Si vous n’êtes pas l’administrateur de la base de données, contactez celui-ci en cas d’erreurs de connexion indiquant que l’instance n’accepte pas les connexions.

Une configuration supplémentaire est requise sur la machine SQL Server et la machine cliente pour utiliser des connexions chiffrées.

Installer le pilote ODBC pour SQL Server

Procurez-vous le pilote ODBC Microsoft 64 bits pour SQL Server auprès du centre de téléchargement Microsoft ou de My Esri. Utilisez toujours le pilote ODBC Microsoft compatible avec la version de SQL Server à laquelle vous voulez vous connecter. Installez le pilote sur tous les ordinateurs sur lesquels ArcGIS Pro et ArcGIS Server sont installés.

Si vous ne disposez pas des privilèges nécessaires pour installer des logiciels sur les ordinateurs exécutant les clients ArcGIS, demandez à votre service informatique d’installer et de configurer le pilote ODBC Microsoft pour vous.

Remarque :

Si ArcGIS Server et SQL Server sont installés sur le même serveur, cette machine n’a pas besoin d’un pilote ODBC distinct.

Lorsque vous vous connectez depuis ArcGIS Server sur Ubuntu à une version prise en charge de SQL Server, vous devez installer le paquetage Microsoft unixodbc-dev sur toutes les machines ArcGIS Server en plus du pilote ODBC.

Connexion à la base de données

Vous pouvez utiliser la boîte de dialogue Database Connection (Connexion à une base de données) d’ArcGIS Pro pour vous connecter à la base de données, comme décrit ci-dessous.

Une autre possibilité consiste à exécuter l’outil de géotraitement Créer une connexion à une base de données dans ArcGIS Pro ou à utiliser Python pour exécuter la commande Créer une connexion à une base de données à partir d’une machine ArcGIS Server pour créer un fichier de connexion à une base de données (.sde) qui se connecte à une base de données.

Remarque :

Vous ne pouvez pas utiliser l’outil de géotraitement Créer une connexion à une base de données si la connexion utilise l’authentification Microsoft Azure Active Directory.

Utiliser le fichier de connexion à une base de données avec ArcGIS Server nécessite ce qui suit :

  • Vous devez enregistrer les informations d’utilisateur Microsoft Azure Active Directory authentifié de base de données et basées sur le mot de passe dans le fichier de connexion.

    Remarque :

    Vous ne pouvez pas enregistrer une connexion de base de données qui utilise Azure Active Directory - Universelle avec MFA avec un site ArcGIS Server.

  • Si vous utilisez l’authentification du système d’exploitation pour vous connecter, assurez-vous que SQL Server peut authentifier le compte ArcGIS Server.

Conseil :

Assurez-vous que le compte utilisé pour la connexion dispose des privilèges appropriés sur les données auxquelles il doit accéder. Si la connexion utilise l’authentification du système d’exploitation et que vous allez publier des services Web avec cette connexion, assurez-vous que le compte ArcGIS Server dispose des privilèges appropriés sur les données comprises dans le service Web. Pour plus d’informations, consultez les rubriques Privilèges pour les géodatabases dans SQL Server et Privilèges pour l’utilisation d’ArcGIS avec une base de données SQL Server.

Procédez comme suit pour vous connecter à une base de données SQL Server à partir de la boîte de dialogue Database Connection (Connexion à une base de données) dans ArcGIS Pro :

Boîte de dialogue Connexion à une base de données

  1. Ouvrez la fenêtre Catalog (Catalogue) dans ArcGIS Pro.
  2. Cliquez avec le bouton droit sur Databases (Bases de données) et sélectionnez New Database Connection (Nouvelle connexion à une base de données).
  3. Sélectionnez SQL Server dans la liste déroulante Plateforme de la base de données.
  4. Saisissez le nom de l’instance SQL Server dans la zone de texte Instance.

    Voici quelques exemples :

    • Pour une instance nommée SQL Server de terra\gis, saisissez terra\gis dans la zone de texte Instance.
    • Si vous utilisez une instance SQL Server par défaut, vous pouvez spécifier le nom de l’instance ou l’adresse IP du serveur dans la zone de texte Instance. Si vous spécifiez une adresse IPV6, placez-la entre crochets. Par exemple, si l’adresse IPV6 du serveur est 2000:ab1:0:2:f333:c432:55f6:d7zz,, saisissez [2000:ab1:0:2:f333:c432:55f6:d7zz] dans la zone de texte Instance.
    • Si la base de données SQL Server écoute sur un port autre que le port par défaut (1433), vous pouvez inclure le numéro de port dans l’instance. Par exemple, si l’instance SQL Server est nommée basset\spatial et qu’elle écoute sur le port 61000, saisissez basset\spatial,61000 dans la zone de texte Instance. Vous pouvez également fournir le numéro de port à l’aide de la propriété Port. (Consultez l’étape 8 ci-dessous.)
    • Pour une instance Amazon RDS for SQL Server, son format est <database_instance_identifier>.<region_id>.rds.amazonaws.com.
    • Pour une instance Google Cloud SQL for SQL Server, saisissez son adresse IP publique dans la zone de texte Instance.
    • Pour une instance Microsoft Azure SQL Managed Instance ou Microsoft Azure SQL Database, fournissez le nom du serveur dans la zone de texte Instance. Par exemple, si le nom du serveur est cloudy4u.dbid123.database.windows.net, saisissez cloudy4u.dbid123.database.windows.net dans la zone de texte Instance.
  5. Choisissez le type d’authentification à utiliser lorsque vous vous connectez à la base de données.

    Les options Azure Active Directory ne sont prises en charge que lors de la connexion à Azure SQL Database ou à Azure SQL Managed Instance.

    • Operating system authentication (Authentification du système d’exploitation) : vous n’avez pas besoin d’entrer un nom d’utilisateur et un mot de passe : la connexion est établie avec le nom de connexion et le mot de passe utilisés pour ouvrir une session dans le système d’exploitation. Si la connexion utilisée pour le système d’exploitation n’est pas une connexion de base de données valide, la connexion échoue.
    • Database authentication (Authentification de la base de données) : vous devez fournir un nom d’utilisateur de base de données et un mot de passe valides dans les zones de texte User name (Nom d’utilisateur) et Password (Mot de passe), respectivement. La longueur maximale des noms d’utilisateur est de 30 caractères.

    • Azure Active Directory - Universal with MFA (Authentification universelle Azure Active Directory avec MFA) : vous devez spécifier le nom d’utilisateur Azure Active Directory mais pas le mot de passe. Lorsque vous vous connectez, un code vous est envoyé dans un message texte, un e-mail ou un appareil MFA, ou une numérisation de l’empreinte digitale peut être utilisée à des fins d’authentification. Cette deuxième partie du processus d’authentification varie selon la manière dont vos protocoles de réseau et d’authentification sont configurés.

      Vous ne pouvez pas enregistrer une connexion de base de données qui utilise Azure Active Directory - Universelle avec MFA avec un site ArcGIS Server.

    • Azure Active Directory - Password (Mot de passe Azure Active Directory) : vous devez fournir un nom d’utilisateur et un mot de passe Azure Active Directory valides dans les zones de texte User name (Nom d’utilisateur) et Password (Mot de passe), respectivement. La longueur maximale des noms d’utilisateur est de 30 caractères.
    Remarque :

    • L’option Save user name and password (Enregistrer le nom d’utilisateur et le mot de passe) doit être activée pour les fichiers de connexion utilisant l’authentification de base de données ou l’authentification Azure Active Directory pour offrir des services Web ArcGIS avec accès à la base de données, ou si vous souhaitez localiser dans ArcGIS Pro les données accessibles via ce fichier de connexion.
    • En dehors d’ArcGIS, vous pouvez créer dans SQL Server des noms d’utilisateurs qui contiennent des caractères spéciaux. Délimitez ces noms d’utilisateurs lorsque vous les utilisez. ArcGIS ajoute le délimiteur automatiquement lorsqu’il est transmis à SQL Server. Vous n’avez pas besoin d’inclure de délimiteur avec le nom de l’utilisateur. Par exemple, si votre nom d’utilisateur est map.user, saisissez map.user, et non "map.user" dans la zone de texte User name (Nom d’utilisateur). Pour en savoir plus sur la délimitation des identifiants, consultez la documentation SQL Server.

  6. Dans la zone de texte Database, sélectionnez le nom de la base de données à laquelle vous souhaitez vous connecter sur l’instance SQL Server ou Azure SQL Managed Instance, ou, pour tous les autres services de base de données, saisissez le nom de la base de données.

    Le nom de la base de données est limité à 31 caractères.

  7. Saisissez un nom pour le fichier de connexion dans le champ Connection File Name (Nom du fichier de connexion).

    Lorsque vous indiquez les informations de connexion, un nom par défaut est créé. Vous pouvez utiliser ce nom par défaut ou saisir un nom de fichier plus descriptif.

    Il s’agit du nom qui apparaîtra dans la fenêtre et dans la vue Catalog (Catalogue) et du nom du fichier .sde stocké sur le disque.

  8. Vous pouvez également développer la section Additional Properties (Propriétés supplémentaires) et spécifier des paramètres de connexion complémentaires aux paramètres obligatoires indiqués dans les étapes précédentes.
    • Port : si l’instance SQL Server communique via un port différent du port par défaut, sélectionnez ce paramètre dans le menu déroulant Property et saisissez le port approprié dans le champ Value.
    • Encrypt : active le chiffrement SSL sur la connexion. Les valeurs prises en charge sont Yes ou No.
    • TrustServerCertificate : permet le chiffrement sans qu’il soit nécessaire de fournir un certificat client. Les valeurs prises en charge sont Yes ou No.
    • ApplicationIntent : prend en charge le routage en lecture seule si l’utilisateur se connecte au programme d’écoute du groupe de disponibilité AlwaysOn et si le routage en lecture seule a été configuré. Les valeurs prises en charge sont READONLY ou READWRITE.
    • MultisubnetFailover : permet un basculement plus rapide pour tous les groupes de disponibilité et l’instance de cluster de basculement dans SQL Server et réduit considérablement le temps de basculement pour les topologies Always On à sous-réseaux unique ou multiples. Les valeurs prises en charge sont Yes ou No.
  9. Cliquez sur Validate (Valider) pour confirmer que les informations de connexion sont valides et que la base de données est accessible.

    Si la base de données contient une géodatabase et que la connexion est valide, l’onglet Geodatabase Properties (Propriétés de la géodatabase) est désormais actif. Le cas échéant, vous pouvez modifier les propriétés de connexion à la géodatabase pour établir une connexion à une version traditionnelle autre que la version par défaut, configurer la connexion en tant que connexion à une version de branche ou établir une connexion à un moment historique.

  10. Cliquez sur OK pour créer le fichier de connexion.

Une connexion à une base de données s’affiche sous Databases (Bases de données) dans la fenêtre Catalog (Catalogue) et un fichier de connexion (.sde) est créé dans le répertoire de projet ArcGIS Pro.

Inscrire la base de données auprès d’ArcGIS Server

Pour autoriser les sites ArcGIS Server à accéder aux données, utilisez le fichier de connexion à une base de données que vous avez créé afin d’ajouter un data store inscrit dans ArcGIS Pro ou d’ajouter un élément de data store dans le portail.