Vous pouvez vous connecter à Oracle depuis des clients ArcGIS. Pour ce faire, installez un client Oracle sur la machine cliente ArcGIS, définissez des variables d'environnement qui référencent le client Oracle, puis connectez-vous à la base de données à partir d'ArcGIS.
Une fois le client configuré, créez un fichier de connexion. Pour utiliser vos données Oracle dans des services publiés sur ArcGIS Server, inscrivez la base de données ou la géodatabase auprès du serveur SIG.
Connexion à partir d'ArcMap
Pour vous connecter à une base de données ou une géodatabase dans Oracle à partir d'ArcMap, définissez la variable d'environnement PATH sur l'emplacement du client Oracle, puis créez un fichier de connexion dans l'arborescence du Catalogue.
Installer le client Oracle
Pour créer une connexion depuis un ordinateur client vers une base de données Oracle, vous devez installer l'application cliente Oracle sur l'ordinateur client. Veillez à installer une version de l'application cliente Oracle qui soit compatible avec la version de la base de données à laquelle vous souhaitez vous connecter.
Vous pouvez obtenir le client Oracle Instant, Runtime ou Administrator auprès d'Oracle et l'installer sur l'ordinateur client, conformément aux instructions de la documentation Oracle.
Définir la variable PATH
Définissez la variable d'environnement PATH sur la machine ArcMap pour qu'elle désigne le répertoire d'installation du client Oracle. Consultez la documentation Microsoft Windows pour savoir comment définir la variable d'environnement PATH.
Si ArcMap est ouvert sur la machine avant la définition de la variable PATH, redémarrez ArcMap appliquer le nouveau paramètre.
Connexion à la base de données
Dans Oracle, vous pouvez vous connecter à une base de données ou une géodatabase en ajoutant une connexion à une base de données sous le nœud Connexions aux bases de données de l'arborescence du Catalogue d'ArcMap ou ArcCatalog.
- Développez le nœud Connexions aux bases de données dans l'arborescence du Catalogue d'ArcMap ou d'ArcCatalog et double-cliquez sur Ajouter une connexion à une base de données.
- Sélectionnez Oracle dans la liste déroulante Plateforme de la base de données.
- Indiquez le nom TNS Oracle dans la zone de texte Instance ou indiquez une des chaînes Easy Connect d'Oracle suivantes :
- Nom de l'élément Serveur Oracle/Nom ou ID de service Oracle
Par exemple, si Oracle est installé dans myserver et que myosvc est le nom du service Oracle, tapez la syntaxe suivante :
myserver/myosvc
- Nom de l'élément Serveur Oracle:Numéro de port Oracle/Nom ou ID de service Oracle
Dans cet exemple, Oracle est installé dans myserver, écoute sur le port 60000, et myoservice est le nom du service Oracle.
myserver:60000/myoservice
- Adresse URL du serveur Oracle
L'URL de l'instance illustrée dans le dernier exemple serait la suivante :
//myserver:60000/myoservice
- Nom du serveur Oracle (Vous pouvez l'utiliser si le processus d'écoute Oracle sur le serveur est configuré pour pointer sur une instance par défaut.)
- Adresse IP du serveur Oracle/Nom ou ID de service Oracle
Par exemple, si l'adresse du serveur est 10:10:10:10 et que le nom du service Oracle est orasvc, tapez 10:10:10:10/orasvc.
Placez les adresses IPV6 entre crochets, comme suit : [4000:ab5:0:0:f666:d191:77f5:e2bd]/orasvc.
- Adresse IP du serveur Oracle:Numéro de port Oracle/Nom ou ID de service Oracle
Dans cet exemple, l'adresse IP est 10:20:30:40, le port est 59999, et le service Oracle myomy1: 10:20:30:40:59999/myomy1.
Une adresse IPV6 pour les mêmes port et service aurait l'aspect suivant : [6543:ef4:0:1:f587:l249:12f9:a3cd]:59999/myomy110:20:30:40:59999/myomy1.
Vérifiez que votre instance Oracle est configurée de façon à autoriser 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.ora sur 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. Notez également que si votre instance d'Oracle n'écoute pas sur le numéro de port Oracle par défaut, vous devez utiliser la syntaxe de connexion incluant le numéro de port.
- Nom de l'élément Serveur Oracle/Nom ou ID de service Oracle
- Choisissez le type d'authentification à utiliser lorsque vous vous connectez à la base de données : Authentification de la base de données ou Authentification du système d’exploitation.
- Si vous cliquez sur 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. Vous ne pouvez pas utiliser l'authentification du système d'exploitation si vous utilisez Oracle Instant Client.
Si vous choisissez 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 Nom d'utilisateur et Mot de passe. La longueur maximale des noms d'utilisateur est de 30 caractères.
Décochez la case Enregistrer le nom d'utilisateur et le mot de passe si vous préférez ne pas enregistrer les informations de connexion avec la connexion. Cela peut vous aider à sécuriser la base de données. Toutefois, si vous procédez ainsi, vous serez invité à fournir un nom d'utilisateur et un mot de passe à chaque connexion. Notez également que l'option Enregistrer le nom d’utilisateur et le mot de passe doit être activée pour les fichiers de connexion offrant des services ArcGIS avec accès à la base de données ou à la géodatabase ou si vous souhaitez utiliser la recherche sur le Catalogue pour localiser les données auxquelles ce fichier de connexion accède.
Dans l'exemple suivant, une connexion à une instance Oracle oracl/dbdata est établie via l'authentification de la base de données.
- Cliquez sur OK pour vous connecter.
Un fichier est créé dans \\<computer_name>\Users\<user_name>\AppData\Roaming\ESRI\Desktop<release#>\ArcCatalog. Si vous avez des difficultés à vous connecter, consultez le fichier sdedc_Oracle.log du répertoire %TEMP% qui contient des messages d'erreur plus détaillés.
Vous pouvez transférer la connexion vers un autre emplacement, mais veillez à ce que les utilisateurs et les applications qui doivent établir une connexion disposent d'un accès en lecture sur le répertoire dans lequel se trouve le fichier de connexion.
Si vous utilisez les données de cette connexion comme source pour un service, tel qu'un service de géotraitement ou de géocodage, il vous faudra peut-être placer le fichier de connexion dans un emplacement partagé sur votre réseau. Reportez-vous à la rubrique Préparation de ressources pour la publication sous forme de services pour en savoir plus sur le partage d'un fichier de connexion.
Connexion à une géodatabase de structure utilisateur ou de version différente
Lorsque vous vous connectez à l'origine à une géodatabase dans Oracle, vous êtes connecté à la géodatabase sde principale de la version par défaut. Pour vous connecter à une géodatabase de structure utilisateur, à une version transactionnelle autre que la version par défaut ou à une version historique, utilisez la boîte de dialogue Propriétés de connexion de géodatabase. Les géodatabases de structure utilisateur sont répertoriées en tant que versions transactionnelles dans cette boîte de dialogue. Reportez-vous à la rubrique Connexion à une version de géodatabase spécifique pour plus d'informations.
Connexion à partir d'ArcGIS for Server
Si Oracle et ArcGIS for Server s'exécutent sur des serveurs différents, installez un client Oracle 64 bits sur l'ordinateur exécutant ArcGIS for Server.
Si ArcGIS for Server est installé sur un serveur Linux, modifiez le script init_user_param.sh pour y ajouter des informations sur l'instance et le client Oracle, puis redémarrez ArcGIS for Server.
Pour que les services que vous publiez sur ArcGIS Server puissent utiliser les données de votre base de données ou géodatabase dans Oracle, vous devez inscrire la base de données auprès de votre serveur SIG.
Installer le client Oracle
Si ArcGIS for Server et Oracle sont installés sur des serveurs distincts, vous devez installer l'application du client Oracle sur la machine exécutant ArcGIS for Server. Veillez à installer une version de l'application cliente Oracle qui soit compatible avec la version de la base de données à laquelle vous souhaitez vous connecter.
Vous pouvez obtenir le client Oracle Instant, Runtime ou Administrator auprès d'Oracle et l'installer sur l'ordinateur client, conformément aux instructions de la documentation Oracle.
Définir la variable d'environnement PATH (Windows uniquement)
Définissez la variable d'environnement PATH sur le serveur Windows d'ArcGIS for Server pour qu'elle désigne le répertoire d'installation du client Oracle. Consultez la documentation Microsoft Windows pour savoir comment définir la variable d'environnement PATH.
Si ArcGIS Server était en cours d'exécution avant la configuration du client Oracle et la définition de la variable PATH, vous devez redémarrer ArcGIS Server. Vous pouvez redémarrer ArcGIS Server à partir de l'interface Services Windows.
Modifier le script init_user_param.sh (Linux uniquement)
Une fois les fichiers de clients de bases de données installés, modifiez le script init_user_param.sh pour les référencer. Ce script est disponible dans le répertoire <ArcGIS Server installation directory>/arcgis/server/usr.
- Vérifiez que le propriétaire de l'installation d'ArcGIS Server possède au moins des autorisations de lecture et d'exécution sur les bibliothèques du client de la base de données.
- Ouvrez le script init_user_param.sh dans un éditeur de texte.
- Supprimez les marques de commentaire (#) des lignes qui commencent par export.
Si vous avez installé le client Oracle Administrator, Developer ou Runtime, supprimez les marques de commentaire de toutes les lignes Oracle commençant par export.
# # To connect to Oracle # export ORACLE_BASE=<Oracle_Installdir>/app export ORACLE_HOME=$ORACLE_BASE/<Oracle_Release>/product/<Oracle_Version>/client_1 export ORACLE_SID=<set when applicable> export TNS_ADMIN=<set when applicable. e.g.$ORACLE_HOME/network/admin> export PATH=$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
Si vous utilisez les bibliothèques Oracle Database Instant Client, vous devez uniquement annuler les marques de commentaire et définir $LD_LIBRARY_PATH, par exemple :
# # To connect with Oracle Instant Client # export LD_LIBRARY_PATH=<Location_to_instantclient>:$LD_LIBRARY_PATH
- Définissez les valeurs des variables d'exportation.
- Pour les clients Oracle Administrator, Developer ou Runtime, supprimez les marques de commentaire et définissez les variables suivantes en fonction des informations spécifiques à votre implémentation.
ORACLE_BASE=<Oracle_Installdir>
<Oracle_Installdir> correspond au nom et au chemin d'accès au répertoire de niveau supérieur dans lequel le client Oracle est installé.
ORACLE_HOME=$ORACLE_BASE/<Oracle_Release>/product/<Oracle_Version>/client_1
Il s'agit du chemin d'accès aux fichiers de la bibliothèque du client Oracle. Définissez ORACLE_HOME sur le répertoire qui contient ces fichiers. Par défaut, le nom du répertoire est client_1, mais il peut varier selon les installations.
- Si vous utilisez l'ID du système Oracle (SID) pour vous connecter, définissez ORACLE_SID= sur le l'ID du système Oracle de votre base de données. Si vous devez utiliser une chaîne Easy Connect pour vous connecter, mettez cette ligne en commentaire.
- Définissez TNS_ADMIN= sur l'emplacement des fichiers d'administration TNS du client Oracle. Si vous devez utiliser une chaîne Easy Connect pour vous connecter, aucune valeur n'est attendue et vous pouvez mettre cette ligne en commentaire.
- Pour les clients Oracle Instant, supprimez les marques de commentaire et définissez uniquement la variable LD_LIBRARY_PATH, en remplaçant <Location_to_instantclient> par le nom et le chemin d'accès au répertoire qui contient les fichiers d'Oracle Instant Client.
- Si ArcGIS for Server et Oracle sont installés sur le même serveur, supprimez les marques de commentaire et définissez les variables suivantes :
ORACLE_BASE=<Oracle_Installdir>
<Oracle_Installdir> correspond au nom et au chemin d'accès au répertoire de niveau supérieur dans lequel Oracle est installé.
ORACLE_HOME=$ORACLE_BASE/<Oracle_Release>/product/<Oracle_Version>/client_1
Il s'agit du chemin d'accès aux fichiers de la bibliothèque Oracle. Définissez ORACLE_HOME sur le répertoire qui contient ces fichiers. Par défaut, le nom du répertoire est db_<n>, mais il peut varier selon les installations.
- Si vous utilisez l'ID du système Oracle (SID) pour vous connecter, définissez ORACLE_SID= sur le l'ID du système Oracle de votre base de données. Si vous devez utiliser une chaîne Easy Connect pour vous connecter, mettez cette ligne en commentaire.
- Définissez TNS_ADMIN= sur l'emplacement des fichiers d'administration TNS du client Oracle. Si vous devez utiliser une chaîne Easy Connect pour vous connecter, aucune valeur n'est attendue et vous pouvez mettre cette ligne en commentaire.
- Pour les clients Oracle Administrator, Developer ou Runtime, supprimez les marques de commentaire et définissez les variables suivantes en fonction des informations spécifiques à votre implémentation.
- Enregistrez et fermez le script.
- Redémarrez chaque serveur SIG de votre déploiement ArcGIS Server en exécutant le script startserver.sh.
./startserver.sh
Inscrire la base de données
Pour que vos services Web utilisent les données de votre base de données Oracle ou d'une géodatabase dans Oracle, inscrivez-la dans ArcGIS Server. Deux options d'inscription sont disponibles pour les géodatabases dans Oracle. Reportez-vous à la rubrique A propos de l'inscription de vos données auprès du serveur pour connaître les options d'inscription. Cette rubrique propose également des liens vers des rubriques concernant l'inscription de votre base de données.