Créer une géodatabase dans Oracle
Disponible avec une licence Standard ou Advanced.
Pour créer une géodatabase dans une base de données Oracle, exécutez un outil de géotraitement ou un script Python à partir d’un client ArcGIS.
Lorsque vous créez une géodatabase à l’aide d’ArcGIS Pro 3.7, la version de la géodatabase est 12.1.0.x.
Commencez par lire les conditions préalables, puis conformez-vous aux instructions qui s’appliquent à votre situation.
Conditions requises
Avant de créer une géodatabase dans Oracle, effectuez les opérations suivantes :
Vérifiez que les combinaisons d’ArcGIS, d’Oracle et du système d’exploitation que vous voulez utiliser sont compatibles.
Téléchargez le client Oracle requis pour vous connecter à la version d’Oracle que vous allez utiliser pour stocker votre géodatabase.
Procurez-vous un fichier de codes clés ArcGIS Server (il est créé lorsque vous autorisez ArcGIS Server) et placez-le dans un emplacement accessible depuis le client ArcGIS que vous utiliserez pour créer la géodatabase.
Identifiez l’utilisateur qui créera la géodatabase car cela déterminera l’outil que vous exécuterez pour créer la géodatabase. Suivez les instructions correspondant à votre situation.
Si vous êtes administrateur de base de données et administrateur de géodatabase, suivez les instructions dans la section suivante.
Si l’administrateur de base de données et l’administrateur de géodatabase sont deux personnes différentes, suivez les instructions destinées à l’administrateur Oracle pour configurer la base de données et celles destinées à l’administrateur de géodatabase pour créer la géodatabase.
Vous êtes administrateur de base de données et de géodatabase
Si vous êtes à la fois administrateur de base de données et administrateur de géodatabase et que par conséquent, 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 un script Python qui appelle cet outil pour créer une géodatabase dans Oracle.
L’outil Créer une géodatabase d’entreprise crée l’utilisateur, la structure et le tablespace sde, et accorde à l’utilisateur sde les privilèges requis pour créer la géodatabase. Pour ce faire, l’outil utilise les paramètres par défaut suivants :
Création d'un utilisateur de base de données nommé sde
Création d’un tablespace de 400 Mo dans l’emplacement par défaut d’Oracle et attribution de ce dernier à l’utilisateur sde
Octroi des privilèges d’utilisateur sde requis pour créer et mettre à niveau une géodatabase, supprimer des connexions à la base de données et importer des données avec Oracle Data Pump
Attribution de privilèges de paquetages nécessaires pour créer une géodatabase
Création d'une géodatabase
Pour plus d’informations sur les privilèges requis, reportez-vous à la rubrique Privilèges pour les géodatabases dans Oracle.
Remarque :
Vous ne pouvez pas utiliser ce workflow pour créer une géodatabase dans un service de base de données.
Avant d’exécuter l’outil ou le script de création d’une géodatabase, vous devez configurer Oracle.
Installer et configurer Oracle
Avant de créer une géodatabase, vous devez installer et configurer Oracle, puis créer une base de données. La façon dont vous (ou votre service informatique) configurez l’instance et la base de données Oracle varie en fonction des besoins spécifiques de votre organisation. Consultez la documentation Oracle qui contient des informations sur l’installation et la configuration.
Vérifiez la configuration système requise d’ArcGIS pour utiliser Oracle avant de créer une géodatabase pour vous assurer que les combinaisons d’Oracle, d’ArcGIS et du matériel que vous voulez utiliser sont prises en charge.
Si vous avez besoin d’effectuer l’une des opérations ci-après, il est également nécessaire de configurer le processus extproc d’Oracle pour accéder aux bibliothèques ST_Geometry Esri :
Exécuter les fonctions SQL ST_Geometry à partir de clients SQL.
Définir une couche de requête qui exécute les fonctions SQL sur les colonnes ST_Geometry.
Interroger les couches d’entités groupées dans ArcGIS Pro.
Publier une couche Web qui référence les données de la base de données Oracle.
Exécuter l’outil de géotraitement Sélectionner une couche par localisation avec l’option Intersect (DBMS) (Intersection [SGBD]).
Une fois Oracle installé et configuré, installez les clients ArcGIS et Oracle.
Installer et configurer les clients
Vous pouvez installer ArcGIS Pro (Standard ou Advanced) ou ArcGIS Server et exécuter un script 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 aurez besoin d’un fichier de codes clés ArcGIS Server (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é. Il peut être nécessaire de copier le fichier depuis la machine ArcGIS Server dans un emplacement auquel l’outil de géotraitement ou le script Python peut accéder.
Dans la plupart des cas, votre client ArcGIS sera installé sur un ordinateur autre que celui où est installé Oracle. Ainsi, pour vous connecter à l’instance Oracle, votre client Oracle doit être pris en charge sur l’ordinateur du client ArcGIS. Consultez la documentation Oracle pour identifier la version du client Oracle que vous devez installer pour vous connecter à la version d’Oracle que vous utilisez et pour des instructions d’installation et de configuration du client Oracle.
Installez le client ArcGIS que vous utiliserez pour créer la géodatabase.
Suivez les instructions des guides d'installation du logiciel.
Installez et configurez un client Oracle sur l’ordinateur du client ArcGIS.
Vous pouvez obtenir le client Oracle Instant, Runtime ou Administrator auprès d’Oracle. Consultez la documentation Oracle pour en savoir plus sur l’installation.
Définissez la variable d’environnement de votre système d’exploitation ou du profil utilisateur de manière à inclure le chemin d’accès et le nom du répertoire dans lequel est installé le client Oracle.
Sous Linus, définissez la variable d’environnement LD_LIBRARY_PATH.
Sous Microsoft Windows, définissez la variable d’environnement PATH.
Si le client ArcGIS était déjà en cours d’exécution, redémarrez-le pour qu’il reconnaisse le client Oracle et les nouvelles variables d’environnement.
Vous pouvez vous connecter depuis ArcGIS à Oracle en utilisant une chaîne Easy Connect à condition de configurer votre base de données Oracle pour qu’elle admette les chaînes Easy Connect.
Si le client Oracle complet est installé, mais que vous souhaitez utiliser la syntaxe Easy Connect pour vous connecter, veillez à ce que le fichier
sqlnet.orasur le client soit configuré de façon à autoriser l’utilisation d’Easy Connect et à ce que le serveur Oracle soit configuré pour autoriser la syntaxe Easy Connect. Pour plus d’informations, reportez-vous à la documentation Oracle.
Vous pouvez maintenant créer une géodatabase.
Créer une géodatabase
Vous pouvez exécuter l’outil Create Enterprise Geodatabase (Créer une géodatabase d’entreprise) depuis ArcGIS Pro (Standard ou Advanced) ou exécuter un script Python depuis un ordinateur ArcGIS Pro ou ArcGIS Server pour créer un utilisateur, un schéma, un tablespace et une géodatabase sde.
Exécuter l’outil Créer une géodatabase d’entreprise
Vous pouvez exécuter un outil de géotraitement pour créer la géodatabase dans ArcGIS Pro.
Procédez comme suit pour créer une géodatabase à l’aide de l’outil Créer une géodatabase d’entreprise :
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 Oracle dans la liste déroulante Plateforme de la base de données.
Fournissez les informations requises pour vous connecter à l’instance Oracle.
Si vous avez déjà configuré le client Oracle en vue de l’utilisation d’un alias de réseau TNS, indiquez l’alias de service Net dans la zone de texte Instance.
Si vous n’avez pas configuré l’alias de réseau du client Oracle et que vos bases de données et client Oracle sont configurés pour utiliser des chaînes Easy Connect, saisissez la chaîne Easy Connect d’Oracle dans la zone de texte Instance.
Reportez-vous à la rubrique Connexion à Oracle à partir d’ArcGIS pour obtenir une liste de chaînes Easy Connect valides.
Indiquez le mot de passe de l’utilisateur système dans la zone de texte Database Administrator Password (Mot de passe de l’administrateur de base de données).
Remarque :
La zone de texte Database Administrator (Administrateur de base de données) est renseignée avec le nom d’utilisateur système car vous devez vous connecter à la base de données en tant qu’administrateur de base de données pour créer l’administrateur de géodatabase et le tablespace.
Saisissez sde dans la zone de texte Geodatabase Administrator (Administrateur de géodatabase).
Si l’utilisateur sde n’existe pas dans la base de données, l’outil le crée et lui accorde les privilèges requis pour créer une géodatabase. Si l’utilisateur existe, les privilèges requis lui sont accordés.
Indiquez un mot de passe pour l’utilisateur sde dans la zone de texte Geodatabase Administrator Password (Mot de passe administrateur de géodatabase).
Si l’utilisateur sde existe dans la base de données, vous devez indiquer le mot de passe correspondant à l’utilisateur existant ; cet outil ne modifiera pas le mot de passe. Si vous créez un utilisateur sde, le mot de passe que vous fournissez est utilisé lors de la création de l’utilisateur sde.
Spécifiez un tablespace pour l'utilisateur sde.
Si vous devez utiliser un tablespace préconfiguré pour le référentiel de géodatabase, indiquez son nom dans la zone de texte Tablespace Name (Nom du tablespace).
Pour créer un tablespace, indiquez un nom valide dans la zone de texte Tablespace Name (Nom du tablespace) pour que l’outil crée un tablespace de 400 Mo à l’emplacement Oracle par défaut. Si vous n’indiquez pas le nom d’un tablespace, un tablespace SDE_TBS est créé et défini comme tablespace par défaut pour l’utilisateur sde.
Pour spécifier une valeur dans Authorization File (Fichier d’autorisation), recherchez et choisissez le fichier de codes clés qui a été créé lorsque vous avez autorisé ArcGIS Server.
Si vous ne l’avez pas déjà fait, autorisez maintenant ArcGIS Server à créer le fichier de codes clés. Ce fichier est créé dans le dossier
\\Program Files\ESRI\License<release#>\sysgensur les serveurs Windows et/arcgis/server/framework/runtime/.wine/drive_c/Program Files/ESRI/License<release#>/sysgensur les serveurs Linux. Copiez le fichier de codes clés dans un emplacement accessible par l'outil.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 journal pour le résoudre.
Une géodatabase est créée dans la base de données Oracle.
Ensuite, si la valeur du paramètre open_cursors de la base de données Oracle est différente de 300, exécutez la procédure stockée sde.gdb_util.update_open_cursors pour synchroniser votre paramètre de base de données Oracle avec celui de 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 une machine ArcGIS Pro (Standard ou Advanced) ou ArcGIS Server.
Conseil :
Pour des informations sur l’exécution de Python depuis une machine ArcGIS Server, voir ArcGIS Server et ArcPy.
Créez un fichier texte sur l’ordinateur du client ArcGIS, puis copiez-y le script suivant en indiquant les informations spécifiques de votre site :
""" Name: create_enterprise_gdb.py Description: Create an enterprise geodatabase in Oracle with provided DBMS connection information Author: Esri """ # Import system modules import arcpy, os # Local variables # Provide correct path to your keycodes file # Replace all arcpy.management.CreateEnterpriseGeodatabase values except "ORACLE", "sys", "sde", and license license = os.fsencode("/arcgis/path/to/authorization_file/keycodes") try: arcpy.management.CreateEnterpriseGeodatabase( "ORACLE", "oracle:1521/orainstance", "", "DATABASE_AUTH", "sys", "syspwdqF2b3pxJp3j2", "", "sde", "sdepwdkzsPzL8GuCEA", "sdetblspace", 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.
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 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 journal pour le résoudre.
Vous disposez maintenant d’une géodatabase dans Oracle.
Ensuite, si la valeur du paramètre open_cursors de la base de données Oracle est différente de 300, exécutez la procédure stockée sde.gdb_util.update_open_cursors pour synchroniser votre paramètre de base de données Oracle avec celui de la géodatabase.
L’administrateur Oracle configure la base de données ; l’administrateur de géodatabase crée la géodatabase
Si l’utilisateur qui crée la géodatabase ne connaît pas le mot de passe de l’administrateur de base de données, l’administrateur de base de données peut configurer la base de données et l’utilisateur sde pour que l’administrateur de géodatabase puisse se connecter à la base de données avec l’identifiant de connexion sde et créer une géodatabase à l’aide de l’outil de géotraitement Activer une géodatabase d’entreprise ou 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 dans la structure de l'utilisateur sde.
Installer et configurer Oracle
Avant que l'administrateur de géodatabase ne crée une géodatabase, l'administrateur de base de données doit effectuer les opérations suivantes :
Installer et configurer une instance et une base de données Oracle. La configuration d’Oracle varie en fonction des besoins spécifiques de votre organisation. Consultez la documentation Oracle qui contient des informations sur l’installation et la configuration.
Vérifier la configuration système requise d’ArcGIS 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.
Créer une structure et un utilisateur sde.
Accorder à l'utilisateur sde les privilèges nécessaires pour créer une géodatabase. Pour obtenir la liste des privilèges requis, reportez-vous à la rubrique Privilèges pour les géodatabases dans Oracle.
Créer un tablespace pour l'utilisateur sde et le définir comme tablespace par défaut de l'utilisateur sde.
Accorder des privilèges
executesur les paquetages nécessaires à la création de la géodatabase. Reportez-vous à la rubrique Privilèges pour les géodatabases dans Oracle pour obtenir une liste des paquetages.
Si vous avez besoin d’effectuer l’une des opérations ci-après, il est également nécessaire de configurer le processus extproc d’Oracle pour accéder aux bibliothèques ST_Geometry Esri :
Exécuter les fonctions SQL ST_Geometry à partir de clients SQL.
Définir une couche de requête qui exécute les fonctions SQL sur les colonnes ST_Geometry.
Interroger les couches d’entités groupées dans ArcGIS Pro.
Publier une couche Web qui référence les données de la base de données Oracle.
Exécuter l’outil de géotraitement Sélectionner une couche par localisation avec l’option Intersect (DBMS) (Intersection [SGBD]).
Une fois Oracle installé et configuré, l’administrateur de géodatabase peut installer les clients ArcGIS et Oracle.
Installer et configurer les clients
Vous pouvez installer ArcGIS Pro (Standard ou Advanced) ou ArcGIS Server et exécuter un script Python pour créer une géodatabase. Si vous voulez exécuter l’outil de géotraitement Activer une géodatabase d’entreprise plutôt qu’un script, installez ArcGIS Pro.
Remarque :
Vous aurez besoin d’un fichier de codes clés ArcGIS Server (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é. Il peut être nécessaire de copier le fichier depuis la machine ArcGIS Server dans un emplacement auquel l’outil de géotraitement ou le script Python peut accéder.
Dans la plupart des cas, votre client ArcGIS sera installé sur un ordinateur autre que celui où est installé Oracle. Ainsi, pour vous connecter à l’instance Oracle, votre client Oracle doit être pris en charge sur l’ordinateur du client ArcGIS. Consultez la documentation Oracle pour déterminer quelle version du client Oracle vous devez installer pour vous connecter à la version d’Oracle que vous utilisez et pour savoir comment installer et configurer le client.
Installez le client ArcGIS que vous utiliserez pour créer la géodatabase.
Suivez les instructions des guides d'installation du logiciel.
Installez et configurez un client Oracle sur l’ordinateur du client ArcGIS.
Vous pouvez obtenir le client Oracle Instant, Runtime ou Administrator auprès d’Oracle. Consultez la documentation Oracle pour en savoir plus sur l’installation.
Définissez la variable d’environnement de votre système d’exploitation ou du profil utilisateur de manière à inclure le chemin d’accès et le nom du répertoire dans lequel est installé le client Oracle.
Sous Linus, définissez la variable d’environnement LD_LIBRARY_PATH.
Sous Windows, définissez la variable d’environnement PATH.
Si le client ArcGIS était déjà en cours d’exécution, redémarrez-le pour qu’il reconnaisse le client Oracle et les nouvelles variables d’environnement.
Vous pouvez vous connecter à Oracle à partir d’ArcGIS à l’aide d’une chaîne Easy Connect. Pour ce faire, l’administrateur de base de données doit configurer la base de données Oracle pour qu’elle autorise les chaînes Easy Connect. Si le client Oracle complet est installé, mais que vous souhaitez utiliser la syntaxe Easy Connect pour vous connecter, assurez-vous que le fichier sqlnet.ora sur le client est configuré de sorte à autoriser l’utilisation d’Easy Connect et que l’administrateur de base de données a configuré le serveur Oracle pour qu’il autorise la syntaxe Easy Connect. Pour plus d’informations, reportez-vous à la documentation Oracle.
Vous pouvez maintenant créer une géodatabase.
Créer une géodatabase
L’administrateur de la géodatabase peut exécuter l’outil Activer une géodatabase d’entreprise depuis ArcGIS Pro (Standard ou Advanced) ou exécuter un script Python à partir d’une machine ArcGIS Pro (Standard ou Advanced) ou ArcGIS Server pour créer une géodatabase dans la base de données existante.
Exécuter l’outil Activer une géodatabase d’entreprise
Exécutez l’outil de géotraitement depuis ArcGIS Pro pour créer une géodatabase.
Procédez comme suit pour créer une géodatabase à l’aide de l’outil de géotraitement Activer une géodatabase d’entreprise :
Démarrez ArcGIS Pro.
Connectez-vous à la base de données Oracle en tant qu’utilisateur sde.
Enregistrez le mot de passe de l’utilisateur dans la boîte de dialogue Connexion à la base de données.
Ouvrez l'outil de géotraitement 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.
Indiquez la connexion à la base de données que vous avez créée à l’étape 2 dans le champ Input Database Connection (Connexion à la géodatabase en entrée).
Accédez au fichier d’autorisation qui a été créé lorsque vous avez autorisé ArcGIS Server et ajoutez-le dans la zone de texte Authorization File (Fichier d’autorisation).
Si vous ne l’avez pas déjà fait, autorisez ArcGIS Server à créer ce fichier. Lorsque vous utilisez l’assistant pour autoriser ArcGIS Server, un fichier de codes clés est enregistré sur le serveur sur lequel le logiciel est installé. Si vous avez autorisé ArcGIS Server sur un ordinateur Linux, le fichier de codes clés a été créé dans
/arcgis/server/framework/runtime/.wine/drive_c/Program Files/ESRI/License<release>/sysgen. Si vous l’avez autorisé sur un serveur Windows, le fichier a été créé dansProgram Files\ESRI\License<release>\sysgen. Copiez le fichier de codes clés dans un emplacement accessible par l'outil.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 journal pour le résoudre.
Une géodatabase est créée dans la base de données.
Si les clients doivent accéder à la géodatabase avec SQL, configurez le processus extproc d’Oracle pour autoriser l’accès.
L’administrateur de base de données peut ensuite synchroniser les paramètres open_cursors entre Oracle et la géodatabase à l’aide de la procédure stockée sde.gdb_util.update_open_cursors.
Exécuter un script Python
Si vous voulez créer la géodatabase en exécutant un script depuis une installation ArcGIS Server ou ArcGIS Pro, vous pouvez utiliser le script fourni ici.
Conseil :
Pour des informations sur l’exécution de Python depuis une machine ArcGIS Server, voir ArcGIS Server et ArcPy.
Créez un fichier texte sur l’ordinateur du client ArcGIS, puis copiez-y le script suivant en indiquant les informations spécifiques de votre site :
# Name: enable_enterprise_gdb.py # Description: Create an enterprise geodatabase in an existing Oracle database # Import system modules import arcpy, os # Local variables # Replace directories to work for your site license = "/arcgis/path/to/authorization_file/keycodes" tempdir = "/tmp/" 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 "gisprod/orcl" with your Oracle instance string and replace "Tgdbst@rtsh3r3" with your sde password arcpy.management.CreateDatabaseConnection( tempdir, connection_file_name, "ORACLE", "gisprod/orcl", "DATABASE_AUTH", "sde", "Tgdbst@rtsh3r3", "SAVE_USERNAME" ) # Enable geodatabase try: arcpy.management.EnableEnterpriseGeodatabase(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.
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 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 journal pour le résoudre.
La base de données Oracle contient maintenant une géodatabase.
L’administrateur de base de données peut ensuite synchroniser les paramètres open_cursors entre Oracle et la géodatabase à l’aide de la procédure stockée sde.gdb_util.update_open_cursors.