Géodatabases multiples dans Oracle
Il existe deux méthodes de stockage de plusieurs géodatabases lors de l'utilisation d'un système de gestion de base de données Oracle (SGBD) : vous pouvez installer des instances séparées d'Oracle et, dans chaque instance, créer une géodatabase, ou vous pouvez créer une géodatabase principale dans une instance Oracle et créer aussi des géodatabases dépendantes dans les schémas d'autres utilisateurs dans cette même instance.
La première option nécessite que vous installiez plusieurs instances Oracle. Si vous utilisez un service ArcSDE pour vous connecter à la géodatabase, vous avez besoin d'un service par géodatabase. Chaque géodatabase est gérée et mise à niveau de manière indépendante. Il est également possible de désinstaller et de supprimer individuellement chacune d'elles.
La deuxième option utilise une installation d'Oracle, une installation du composant ArcSDE et un service ArcSDE pour la connexion. Cette option suppose la présence de plusieurs utilisateurs dans la base de données, chacun disposant des privilèges d'administration ArcSDE permettant d'installer, d'administrer et de mettre à niveau la géodatabase stockée dans son schéma. Chaque géodatabase est gérée et mise à niveau de manière indépendante. Vous pouvez supprimer des géodatabases une par une dans un schéma utilisateur après avoir supprimé toutes les données enregistrées, mais vous ne pouvez pas supprimer la géodatabase principale sans supprimer toutes les géodatabases stockées dans les schémas utilisateurs.
Les sections suivantes fournissent des informations concernant chaque option.
Plusieurs géodatabases dans des bases de données Oracle séparées
Vous pouvez créer plusieurs géodatabases dans des bases de données Oracle séparées, en installant et en configurant chaque base de données Oracle de la même façon que si vous n'en utilisiez qu'une.
Si vous établissez une connexion directe séparée à chaque géodatabase, il n'y a pas d'autres étapes de configuration à effectuer, à part la configuration de connexion directe habituelle. Lorsque vous établissez par la suite une connexion à la base de données par le biais de l'authentification de base de données, vous devez préciser le nom du service réseau ajouté à la fin du mot de passe de base de données, afin d'indiquer la base de données à laquelle vous voulez vous connecter. Par exemple, pour un service réseau nommé benedict2, le mot de passe est le suivant :
mypassword@benedict2
Si vous établissez une connexion directe à une base de données Oracle et si vous utilisez l'authentification du système d'exploitation (OS), vous devez définir la variable et la valeur LOCAL sur la syntaxe de connexion directe du champ Service dans ArcCatalog ou dans l'option Serveur (-s) sur la ligne de commande. Par exemple, pour utiliser l'authentification OS pour le service de réseau benedict2, la chaîne de connexion suivante est suivie d'une barre oblique, ce qui donne LOCAL=benedict2 :
sde:oracl10g:/;LOCAL=benedict2
Si vous établissez une connexion directe à une base de données Oracle et si vous utilisez l'authentification de système d'exploitation (OS), vous devez plutôt ajouter la variable et la valeur ORACLE_SID à la syntaxe de connexion directe.
sde:oracle10g:/;ORACLE_SID=benedict2
Reportez-vous à la rubrique Etablissement d'une connexion directe entre ArcGIS Desktop et une géodatabase dans Oracle pour des instructions de connexion complètes depuis l'application Desktop.
Si vous utilisez un service ArcSDE, chaque connexion a besoin de ses propres nom de service ArcSDE et numéro de port. Par conséquent, vous devez ajouter une nouvelle entrée au fichier de services pour le nouveau service et le nouveau numéro de port. Vous devez également créer une copie du fichier dbinit.sde pour chaque géodatabase supplémentaire que vous créez.
Reportez-vous à la rubrique Utilisation de plusieurs services ArcSDE sur un serveur Windows ou Utilisation de plusieurs services ArcSDE sur un serveur Linux ou UNIX pour des instructions de création de plusieurs instances de services ArcSDE.
Plusieurs géodatabases dans une base de données Oracle
Vous pouvez créer plusieurs géodatabases dans une base de données Oracle. Dans ce cas, vous devez créer une géodatabase dans un schéma d'utilisateur autre que celui de l'utilisateur SDE. Pour cette raison, ces géodatabases sont appelées géodatabases de schéma utilisateur. Ces géodatabases contiennent leurs propres tables système de géodatabase et ArcSDE.
Il ne peut y avoir qu'une seule géodatabase par schéma utilisateur. Les géodatabases du schéma utilisateur fonctionnent simultanément avec une géodatabase principale stockée dans le schéma de l'utilisateur SDE. Etant donné que la géodatabase principale est stockée dans le schéma de l'utilisateur SDE, elle est appelée géodatabase SDE maître.
La géodatabase du schéma SDE est toujours la géodatabase principale et contient une table (SDE.INSTANCES) qui répertorie toutes les autres géodatabases dans la base de données Oracle. Le schéma SDE contient également le type ST_Geometry, ses sous-types et fonctions, ainsi que les tables système qu'elle utilise, telles que ST_SPATIAL_REFERENCES.
Les géodatabases SDE maître et les géodatabases de schéma utilisateur sont créées sous une base de données Oracle unique et un service ArcSDE unique qui permet d'y accéder.
Les situations qui peuvent vous amener à vouloir avoir plusieurs géodatabases dans la même base de données Oracle sont les suivantes :
- Si de petits groupes d'une organisation, tels que des départements ou des groupes de projet, sont appelés à travailler indépendamment les uns des autres, ils peuvent vouloir disposer de leurs propres données. Vous pouvez avoir une géodatabase pour chaque groupe.
- Si vous devez séparer votre environnement de développement de votre environnement de production, vous pouvez utiliser une géodatabase dans la structure d'un utilisateur pour l'environnement de développement en vue d'effectuer des tests.
- Créez des géodatabases de structure utilisateur distinctes, de manière à pouvoir configurer chaque géodatabase en fonction des applications spécifiques auxquelles elle est destinée.
- Vous pouvez protéger les informations sensibles en les plaçant dans une géodatabase de structure utilisateur distincte, accessible uniquement à des utilisateurs spécifiques.
Par exemple, vous pouvez souhaiter disposer d'une base de données militaires sensibles protégée dans sa propre géodatabase pour que les propriétaires d'autres instances ne puissent pas consulter les données.
Les règles d'utilisation de plusieurs géodatabases dans une base de données Oracle sont les suivantes :
- Un utilisateur ne peut posséder qu'une seule géodatabase.
- Une seule géodatabase peut référencer un jeu de données qui a été enregistré dans ArcSDE.
- L'utilisateur qui l'a créée est propriétaire de la géodatabase. Cet utilisateur est l'administrateur ArcSDE de cette géodatabase.