Disponible avec une licence Standard ou Advanced.
Pour créer une géodatabase dans une base de données Microsoft SQL Server, vous devez exécuter un outil de géotraitement ou un script Python à partir d’un client ArcGIS.
Si vous créez une géodatabase depuis ArcGIS Pro 3.5, la version de la géodatabase est 11.5.0.x.
Commencez par lire les conditions requises ci-après, puis suivez les instructions qui s’appliquent à votre situation.
Conditions requises
Avant de créer une géodatabase dans SQL Server, effectuez les opérations suivantes :
- Vérifiez que les combinaisons d’ArcGIS, de SQL Server et de système d’exploitation que vous voulez utiliser sont compatibles.
- Téléchargez le client ODBC SQL Server requis pour vous connecter à la version de SQL Server que vous utiliserez pour stocker la géodatabase.
- Procurez-vous un fichier de codes de clés ArcGIS Server et placez-le dans un emplacement accessible depuis le client ArcGIS que vous allez utiliser pour créer la géodatabase.
- Déterminez la personne qui crée la géodatabase car cela affecte la personne qui crée la base de données ainsi que l’outil permettant de créer la géodatabase. Suivez les instructions correspondant à votre situation.
- Si vous êtes l’administrateur de la base de données SQL Server et l’administrateur de la géodatabase, suivez les instructions de la section suivante.
- Si l’administrateur de la base de données et l’administrateur de la géodatabase sont deux personnes différentes, suivez les instructions destinées à l’administrateur SQL Server pour créer la base de données, ainsi que les instructions destinées à l’administrateur de la géodatabase pour créer la géodatabase.
Vous êtes l’administrateur de SQL Server et de la géodatabase
Si vous êtes à la fois administrateur de la base de données et de la géodatabase, et que vous connaissez le mot de passe des deux identifiants de connexion, vous pouvez utiliser l’outil de géotraitement Créer une géodatabase d’entreprise ou la fonction ArcPy pour créer une géodatabase dans une base de données SQL Server.
L’outil Créer une géodatabase d’entreprise vous permet de configurer une géodatabase, crée les objets de base de données et accorde les privilèges requis. Pour ce faire, l’outil utilise les paramètres par défaut suivants et crée les objets de base de données suivants :
- Il crée les fichiers de base de données (MDF et LDF) à l’emplacement par défaut de SQL Server sur le serveur.
- Il définit les options READ_COMMITTED_SNAPSHOT et ALLOW_SNAPSHOT_ISOLATION de la base de données SQL Server sur ON.
- Il utilise les tailles de fichier de base de données par défaut que vous avez définies pour le modèle de base de données SQL Server ou 500 Mo pour le fichier MDF et 125 Mo pour le fichier LDF, la valeur la plus élevée étant retenue.
- Si vous créez une géodatabase dans une structure nommée sde, l’outil crée un identifiant de connexion authentifié de base de données sde dans l’instance SQL Server, puis un utilisateur sde dans la base de données, en l’appariant à l’identifiant de connexion sde. Il crée ensuite une structure sde dans la base de données et octroie à l’utilisateur sde des privilèges l’autorisant à créer une géodatabase et à supprimer les connexions à l’instance SQL Server.
- Il crée les objets de géodatabase dans l’instance SQL Server.
Avant d’exécuter l’outil ou la fonction de création d’une géodatabase, vous devez installer et configurer une instance SQL Server.
Installer et configurer SQL Server
Avant de créer une géodatabase, vous devez installer SQL Server et configurer l’instance. La configuration de l’instance varie en fonction des besoins de votre organisation.
Remarque :
L’instance SQL Server doit utiliser un assemblage qui ne respecte pas la casse, et la base de données ne peut pas utiliser d’assemblage turc.
Une fois SQL Server installé (par le service informatique ou vous-même), configurez l’instance SQL Server de sorte qu’elle accepte les connexions à distance. Par défaut, elles ne sont pas activées.
Consultez la documentation Microsoft contenant les informations d’installation et de configuration de SQL Server.
Une fois SQL Server installé et configuré, installez les clients ArcGIS et SQL Server.
Installer les clients
Vous pouvez installer ArcGIS Pro (Desktop Standard ou Desktop Advanced) ou ArcGIS Server (édition Enterprise) et exécuter un script Python pour créer une géodatabase. Pour exécuter l’outil de géotraitement Créer une géodatabase d’entreprise plutôt qu’un script, installez ArcGIS Pro.
Remarque :
Vous avez besoin d’un fichier de codes clés ArcGIS Server (édition Enterprise) pour autoriser la géodatabase dans la section suivante. Même si vous n’exécutez pas de script Python à partir d’une machine ArcGIS Server pour créer la géodatabase, vous devez installer et autoriser ArcGIS Server pour obtenir le fichier de codes de clés. Vous devrez peut-être copier le fichier de codes clés de la machine ArcGIS Server vers un emplacement auquel l’outil de géotraitement Créer la géodatabase d’entreprise peut accéder.
Dans la plupart des cas, vos clients ArcGIS sont installés sur un ordinateur autre que celui où SQL Server est installé. Ainsi, vous devez disposer d’un client SQL Server pris en charge installé sur l’ordinateur du client ArcGIS pour vous connecter à la base de données. Reportez-vous à la rubrique Configuration système requise d’ArcGIS pour SQL Server afin de déterminer la version du client SQL Server à installer pour vous connecter à la version de SQL Server utilisée.
Pour vous connecter à SQL Server sur une machine Microsoft Windows, vous pouvez télécharger le client SQL Server depuis My Esri ou depuis le Centre de téléchargement Microsoft. Pour vous connecter à SQL Server sur une machine Linux, téléchargez les fichiers du client SQL Server à partir du Centre de téléchargement Microsoft. Suivez les instructions de Microsoft pour installer le client SQL Server sur la machine du client ArcGIS.
Suivez ces étapes pour installer et configurer le client dont vous avez besoin pour créer la géodatabase. Si vous n’êtes pas autorisé à installer le logiciel, demandez à votre service informatique de suivre ces étapes.
- Installez le client ArcGIS que vous utiliserez pour créer la géodatabase.
Suivez les instructions des guides d'installation du logiciel.
- Installez un client SQL ServerSQL Server sur l’ordinateur du client ArcGIS.
Lorsque vous installez le client SQL Server sur un système d’exploitation 64 bits, utilisez le fichier exécutable du client SQL Server 64 bits. Si vous exécutez le client SQL Server 32 bits sur un système d’exploitation 64 bits, l’installation échoue.
Vous pouvez maintenant créer une géodatabase.
Créer une géodatabase
Vous pouvez exécuter l’outil Créer une géodatabase d’entreprise depuis ArcGIS Pro (Desktop Standard ou Desktop Advanced), ou exécuter un script Python à partir d’un client ArcGIS Pro (Desktop Standard ou Desktop Advanced) ou ArcGIS Server (édition Enterprise) pour créer une base de données et une géodatabase.
Exécuter l’outil Créer une géodatabase d’entreprise
Si vous avez accès à ArcGIS Pro, vous pouvez exécuter un outil de géotraitement pour créer la géodatabase.
Procédez comme suit pour créer une géodatabase à l’aide de l’outil Créer la géodatabase d’entreprise dans ArcGIS Pro :
- Démarrez ArcGIS Pro.
- Ouvrez l’outil Créer une géodatabase d’entreprise.
Vous pouvez accéder à cet outil, qui se trouve dans jeu d’outils Administration de la géodatabase de la boîte à outils Gestion des données. Pour obtenir des informations générales sur l’ouverture des outils de géotraitement, reportez-vous à la rubrique Rechercher un outil de géotraitement.
- Sélectionnez SQL Server dans la liste déroulante Plateforme de la base de données.
- Dans la zone de texte Instance, saisissez le nom de l’instance SQL Server à laquelle vous allez vous connecter.
- Dans la zone de texte Database (Base de données), saisissez le nom de la base de données dans laquelle vous souhaitez stocker la géodatabase.
Si aucune base de données de ce nom n’existe dans l’instance SQL Server, l’outil la crée. Si la base de données existe, l’outil l’utilise pour stocker la géodatabase.
- Connectez-vous à SQL Server en tant qu’administrateur système. Utilisez un identifiant de connexion authentifié du système d’exploitation, membre du rôle de serveur fixe sysadmin dans SQL Server, ou saisissez le nom d’utilisateur et le mot de passe de base de données d’un utilisateur sysadmin.
- Pour vous authentifier en tant qu’utilisateur de base de données doté du rôle sysadmin, saisissez le nom d’utilisateur sysadmin dans la zone de texte Database Administrator (Administrateur de base de données) et le mot de passe correspondant dans la zone de texte Database Administrator Password (Mot de passe de l’administrateur de base de données).
- Pour vous authentifier avec un identifiant de connexion sysadmin authentifié du système d’exploitation, reportez-vous à la rubrique Authentification du système d’exploitation. Vous devez avoir ouvert une session Windows avec l’identifiant de connexion approprié pour pouvoir utiliser cette option.
- Choisissez la structure qui doit contenir la géodatabase.
- Si vous souhaitez d'un utilisateur sde soit l'administrateur de géodatabase et que la géodatabase soit stockée dans une structure de l'utilisateur sde, cochez l'option Schéma détenu par Sde.
- Si vous souhaitez que l'utilisateur dbo soit l'administrateur de géodatabase et que la géodatabase soit stockée dans un schéma dbo, décochez l'option Schéma Sde.
Pour plus d’informations sur le stockage de la géodatabase dans la structure sde ou dbo, reportez-vous à la rubrique Comparaison entre propriétaires de géodatabase dans SQL Server.
- Saisissez un mot de passe pour l'administrateur de géodatabase dans la zone de texte Mot de passe de l'administrateur de géodatabase.
Si l’administrateur de géodatabase spécifié existe déjà dans la base de données, vous devez saisir le mot de passe correspondant à l’utilisateur existant ; cet outil ne modifie pas le mot de passe.
- Pour spécifier un fichier dans le champ Authorization File (Fichier d’autorisation), recherchez et choisissez le fichier de codes clés qui a été créé lorsque vous avez autorisé ArcGIS Server (édition Enterprise).
Ce fichier est créé dans le dossier \\Program Files\ESRI\License<release#>\sysgen sur les serveurs Windows et /arcgis/server/framework/runtime/.wine/drive_c/Program Files/ESRI/License<release#>/sysgen sur les serveurs Linux. Copiez le fichier de codes clés dans un emplacement accessible avec l'outil Créer une géodatabase d'entreprise. Si vous ne l’avez pas déjà fait, autorisez ArcGIS Server à créer ce fichier.
- Cliquez sur Run (Exécuter).
Les messages relatifs à la création de la géodatabase sont consignés dans le fichier sde_setup.log, qui est créé dans le répertoire spécifié pour votre variable %TEMP% sur l’ordinateur sur lequel l’outil est exécuté. Si vous rencontrez un problème lors de la création d'une géodatabase, consultez ce fichier pour le résoudre.
Si vous choisissez une structure détenue par un utilisateur sde, la zone de texte Geodatabase Administrator (Administrateur de la géodatabase) indique déjà sde. S’il n’existe aucun utilisateur de ce nom, l’outil le crée ainsi que la structure correspondante et lui accorde les privilèges requis pour créer une géodatabase.
Si vous utilisez l’authentification de base de données et une structure dbo pour stocker la géodatabase, saisissez le nom d’un utilisateur dbo dans l’instance SQL Server dans la zone de texte Geodatabase Administrator (Administrateur de la géodatabase).
Si vous utilisez l’authentification du système d’exploitation pour vous connecter à la base de données, votre identifiant de connexion actuel doit figurer dans le rôle de serveur fixe sysadmin SQL Server pour que vous puissiez créer une géodatabase à structure dbo.
Si vous ne spécifiez aucune base de données existante, une base de données et des fichiers journaux sont créés à l’emplacement par défaut de SQL Server. Une géodatabase est créée dans la base de données. Si vous choisissez une géodatabase de structure sde, un identifiant sde authentifié par la base de données est créé, ainsi qu’un utilisateur de base de données et une structure.
Ensuite, créez un utilisateur autorisé à charger des données dans la géodatabase.
Exécuter un script Python
Vous pouvez copier, enregistrer et exécuter le script fourni ici pour créer une géodatabase depuis ArcGIS Pro (Standard ou Advanced) ou ArcGIS Server (édition Enterprise).
Conseil :
Pour plus d’informations sur l’exécution de Python à partir d’une machine ArcGIS Server, reportez-vous à la rubrique ArcGIS Server et ArcPy.
- Créez un fichier texte sur l’ordinateur du client ArcGIS, puis copiez-y le script suivant en indiquant les options et les informations spécifiques de votre site :
""" Name: create_enterprise_gdb.py Description: Create an enterprise geodatabase in SQL Server with provided DBMS connection information Author: Esri """ # Import system modules import arcpy, os # Local variables # Replace the path with the location of your keycodes file # Replace all arcpy.management.CreateEnterpriseGeodatabase information except "SQL_SERVER" and license with values specific to your site license = os.fsencode("\\Program Files\\path\\to\\authorization_file\\keycodes") try: arcpy.management.CreateEnterpriseGeodatabase("SQL_SERVER", "gisprod", "entgdb", "DATABASE_AUTH", "sa", "N0pe3king!", "SDE_SCHEMA", "sde", "sdepwdGLSCfhjWXQGQ", "", license ) for i in range(arcpy.GetMessageCount()): arcpy.AddReturnMessage(i) arcpy.AddMessage("+++++++++\n") except: for i in range(arcpy.GetMessageCount()): arcpy.AddReturnMessage(i)
- Remplacez les valeurs comme noté dans le script.
- Enregistrez le fichier avec l’extension .py.
- Exécutez le script.
Le fichier sde_setup.log contient les messages associés à la création de la géodatabase ; il est créé dans le répertoire spécifié pour votre variable TEMP ou TMP sur l’ordinateur sur lequel le script est exécuté. Si vous rencontrez un problème lors de la création d'une géodatabase, consultez ce fichier pour le résoudre.
Vous disposez maintenant d’une géodatabase dans SQL Server.
Ensuite, créez un utilisateur autorisé à charger des données dans la géodatabase.
L’administrateur de SQL Server crée la base de données ; l’administrateur de géodatabase crée la géodatabase.
Si la personne qui crée la géodatabase ne connaît pas le mot de passe de l’administrateur de base de données, ce dernier doit créer la base de données et la structure, l’utilisateur et l’identifiant de connexion de l’administrateur de géodatabase. Si la géodatabase doit être stockée dans la structure sde, l'administrateur de base de données crée un utilisateur, une structure et un identifiant de connexion sde. Si la géodatabase doit être stockée dans la structure dbo, l’administrateur de base de données crée un identifiant de connexion et un utilisateur, puis il désigne ce dernier comme étant le propriétaire de la base de données. Reportez-vous à la rubrique Comparaison entre propriétaires de géodatabase dans SQL Server pour plus d’informations sur les options de stockage de géodatabase.
L’administrateur de géodatabase peut se connecter à la base de données en tant qu’administrateur de géodatabase et créer une géodatabase à l’aide de l’outil de géotraitement Activer une géodatabase d’entreprise ou d’un script Python.
L'outil Activer une géodatabase d’entreprise utilise en entrée un fichier de connexion à une base de données et crée les vues, les fonctions, les procédures et les tables système de la géodatabase.
Installer et configurer SQL Server
Avant que l’administrateur de géodatabase ne crée une géodatabase, l’administrateur de SQL Server doit effectuer les opérations suivantes :
- Installez SQL Server et configurez l’instance. La configuration de l’instance varie en fonction des besoins de votre organisation. Vérifiez la configuration système requise d’ArcGIS avant de continuer pour vous assurer que les combinaisons de système de gestion de bases de données, d’ArcGIS et de matériel que vous voulez utiliser sont prises en charge. Configurez l’instance SQL Server de sorte qu’elle accepte les connexions à distance. Par défaut, elles ne sont pas activées. Consultez la documentation Microsoft contenant les informations d’installation et de configuration de SQL Server.
Remarque :
L’instance SQL Server doit utiliser un assemblage qui ne respecte pas la casse, et la base de données ne peut pas utiliser d’assemblage turc.
- Créez une base de données.
- Définissez les options READ_COMMITTED_SNAPSHOT et ALLOW_SNAPSHOT_ISOLATION de la base de données SQL Server sur ON. Si l’administrateur SQL Server ne définit pas ces options sur ON, mais accorde l’autorisation ALTER à l’administrateur de géodatabase dans la base de données, l’outil Activer une géodatabase d’entreprise change ces paramètres dans la base de données lors de l’exécution. Si l’administrateur SQL Server ne définit pas ces options et que l’administrateur de géodatabase ne dispose pas d’autorisations suffisantes pour les modifier, la création de la géodatabase échoue.
- Ajoutez ou créez un identifiant de connexion apparié à un utilisateur de base de données nommé sde ou à l’utilisateur de base de données propriétaire de la base de données.
- Si vous utilisez une géodatabase de structure sde, créez une structure nommée sde dans la base de données. Elle sera la structure par défaut de l'utilisateur sde.
- Si vous utilisez une géodatabase de structure sde, l’utilisateur sde doit disposer, au moins, des privilèges suivants : CREATE FUNCTION, CREATE PROCEDURE, CREATE TABLE et CREATE VIEW. Pour connaître les autres privilèges, reportez-vous à la rubrique Privilèges pour les géodatabases dans SQL Server.
Installer les clients
L’administrateur de géodatabase (ou le service informatique) peut installer ArcGIS Pro (Desktop Standard ou Desktop Advanced) ou ArcGIS Server (édition Enterprise) pour créer une géodatabase en exécutant un script Python. Pour exécuter l’outil de géotraitement Activer une géodatabase d’entreprise plutôt qu’un script, installez ArcGIS Pro.
Remarque :
Vous avez besoin d’un fichier de codes clés ArcGIS Server (édition Enterprise) pour autoriser la géodatabase dans la section suivante. Même si vous n’exécutez pas de script Python à partir d’une machine ArcGIS Server pour créer la géodatabase, vous devez installer et autoriser ArcGIS Server pour obtenir le fichier de codes de clés. Vous devrez peut-être copier le fichier de codes de clés depuis l’ordinateur ArcGIS Server vers un emplacement auquel l’outil de géotraitement Activer une géodatabase d’entreprise peut accéder.
Dans la plupart des cas, les clients ArcGIS sont installés sur un ordinateur autre que celui où SQL Server est installé. Ainsi, vous devez disposer d’un client SQL Server pris en charge installé sur la machine cliente ArcGIS pour vous connecter à la base de données. Reportez-vous à la rubrique Configuration système requise d’ArcGIS pour SQL Server afin de déterminer la version du client SQL Server à installer pour vous connecter à la version de SQL Server utilisée.
Pour vous connecter à SQL Server sur une machine Microsoft Windows, vous pouvez télécharger le client SQL Server depuis My Esri ou depuis le Centre de téléchargement Microsoft. Pour vous connecter à SQL Server sur une machine Linux, téléchargez les fichiers du client SQL Server à partir du Centre de téléchargement Microsoft. Suivez les instructions de Microsoft pour installer le client SQL Server sur votre machine cliente.
- Installez le client ArcGIS que vous utiliserez pour créer la géodatabase.
Suivez les instructions des guides d'installation du logiciel.
- Installez un client SQL ServerSQL Server sur l’ordinateur du client ArcGIS.
Lorsque vous installez le client SQL Server sur un système d’exploitation 64 bits, utilisez le fichier exécutable du client SQL Server 64 bits. Si vous exécutez le client SQL Server 32 bits sur un système d’exploitation 64 bits, il échoue.
Le client ArcGIS est prêt à se connecter à la base de données et à créer une géodatabase. Pour ce faire, utilisez l’une des méthodes décrites dans la section suivante.
Créer une géodatabase
L’administrateur de géodatabase peut exécuter l’outil Activer une géodatabase d’entreprise depuis ArcGIS Pro (Desktop Standard ou Desktop Advanced), ou exécuter un script Python depuis une machine ArcGIS Pro (Desktop Standard ou Desktop Advanced) ou ArcGIS Server (édition Enterprise) pour créer une géodatabase dans la base de données existante.
Exécutez l’outil Activer une géodatabase d’entreprise.
Vous pouvez exécuter l’outil Activer une géodatabase d’entreprise depuis ArcGIS Pro pour créer une géodatabase dans une base de données SQL Server.
Procédez comme suit pour créer une géodatabase à l’aide de l’outil Activer une géodatabase d’entreprise dans ArcGIS Pro :
- Démarrez ArcGIS Pro.
- Connectez-vous à la base de données SQL Server en tant qu’administrateur de la géodatabase.
Enregistrez le mot de passe de l’utilisateur dans la boîte de dialogue Connexion à la base de données.
- Ouvrez l’outil Activer une géodatabase d’entreprise.
Pour obtenir des informations générales sur l’ouverture des outils de géotraitement, reportez-vous à la rubrique Rechercher un outil de géotraitement.
- Faites glisser la connexion à la base de données créée à l’étape 2 dans le champ Input Database Connection (Connexion à la géodatabase en entrée).
- Accédez au fichier d’autorisation ArcGIS Server que vous avez créé lorsque vous avez autorisé ArcGIS Server et ajoutez-le à la zone de texte Authorization File (Fichier d’autorisation).
Lorsque vous utilisez l’assistant pour autoriser ArcGIS Server, un fichier de codes clés est écrit sur le serveur où le logiciel est installé. Le fichier de codes de clés est créé dans Program Files\ESRI\License<release>\sysgen sur les serveurs Windows et dans /arcgis/server/framework/runtime/.wine/drive_c/Program Files/ESRI/License<release#>/sysgen sur les serveurs Linux. Copiez le fichier dans un emplacement accessible avec l'outil Activer une géodatabase d'entreprise. Si vous ne l’avez pas déjà fait, autorisez ArcGIS Server à créer ce fichier.
- Cliquez sur Run (Exécuter).
Les messages relatifs à la création de la géodatabase sont consignés dans le fichier sde_setup.log, qui est créé dans le répertoire spécifié pour votre variable %TEMP% sur l’ordinateur sur lequel l’outil est exécuté. Si vous rencontrez un problème lors de la création d'une géodatabase, consultez ce fichier pour le résoudre.
Une géodatabase est créée dans la base de données.
Ensuite, l'administrateur de base de données peut créer un utilisateur autorisé à charger des données dans la géodatabase.
Exécuter un script Python
Pour créer la géodatabase en exécutant un script depuis ArcGIS Pro (Desktop Standard ou Desktop Advanced) ou ArcGIS Server (édition Enterprise) installé sur une machine Windows, vous pouvez utiliser le script mis à disposition ici.
Conseil :
Pour plus d’informations sur l’exécution de Python à partir d’une machine ArcGIS Server, reportez-vous à la rubrique ArcGIS Server et ArcPy.
Procédez comme suit pour exécuter un script Python et créer une géodatabase dans une base de données SQL Server existante :
- Créez un fichier texte sur l’ordinateur du client ArcGIS, puis copiez-y le script suivant en indiquant les options et les informations spécifiques de votre site :
# Name: enable_enterprise_gdb.py # Description: Create an enterprise geodatabase in an existing SQL Server database # Import system modules import arcpy, os # Local variables # Replace paths with those appropriate to your site license = "\\Program Files\\path\\to\\authorization_file\\keycodes" tempdir = "C:\\temp\\" connection_file_name = "egdb_connection.sde" # Check for the .sde file and delete it if present connection_file_name_path = os.path.join(tempdir, connection_file_name) arcpy.env.overwriteOutput=True if os.path.exists(connection_file_name_path): os.remove(connection_file_name_path) # Create a connection to the geodatabase as the geodatabase administrator # Replace all values except tempdir, connection_file_name, "SQL_SERVER", and "SAVE_USERNAME" arcpy.CreateDatabaseConnection_management(tempdir, connection_file_name, "SQL_SERVER", "gisprod", "DATABASE_AUTH", "sde", "Tgdbst@rtsh3r3", "SAVE_USERNAME", "entgdb" ) # Enable geodatabase try: arcpy.EnableEnterpriseGeodatabase_management(connection_file_name_path, license) except: for i in range(arcpy.GetMessageCount()): arcpy.AddReturnMessage(i)
- Remplacez les valeurs comme noté dans le script.
- Enregistrez le fichier avec l’extension .py.
- Exécutez le script.
Le fichier sde_setup.log contient les messages associés à la création de la géodatabase ; il est créé dans le répertoire spécifié pour votre variable TEMP ou TMP sur l’ordinateur sur lequel le script est exécuté. Si vous rencontrez un problème lors de la création d'une géodatabase, consultez ce fichier pour le résoudre.
La base de données SQL Server contient maintenant une géodatabase.
Ensuite, l'administrateur de base de données peut créer un utilisateur autorisé à charger des données dans la géodatabase.
Vous avez un commentaire à formuler concernant cette rubrique ?