Multiple geodatabases in Oracle

There are two possible ways to store multiple geodatabases when using an Oracle database management system (DBMS): you can install separate instances of Oracle and, in each instance, create a geodatabase, or you can create a master geodatabase in an Oracle instance and also create dependent geodatabases in other users' schemas in that same instance.

The first option requires you to install multiple instances of Oracle. If you use an ArcSDE service to connect to the geodatabase, you need one service for each geodatabase. Each geodatabase is maintained and upgraded independently. Each can also be uninstalled and deleted independently.

The second option uses one installation of Oracle, one installation of ArcSDE, and one ArcSDE service to connect. It requires that you have multiple users in the database, each of whom has been granted geodatabase administrator privileges to install, administer, and upgrade the geodatabase stored in his/her schema. Each geodatabase is maintained and upgraded independently. You can delete individual geodatabases in a user's schema after removing all registered data, but you cannot delete the master geodatabase without deleting all the geodatabases stored in users' schemas.

Information about each option is given in the following sections.

Multiple geodatabases in separate Oracle databases

You can create multiple geodatabases in separate Oracle databases by setting up and installing each Oracle database as you would when setting up just one.

Two different geodatabases in separate Oracle databases

If you make a separate direct connection to each geodatabase, you do not have any additional configuration steps to make beyond the usual direct connection configuration. Then, when you make a connection to the database using database authentication, you need to specify the net service name for the specific database.

If you use an ArcSDE service, each connection needs its own unique ArcSDE service name and port number. Therefore, you must add a new entry to the services file for the new service and port number.

Multiple geodatabases in one Oracle database

You can create multiple geodatabases in one Oracle database. When you do this, you create a geodatabase in the schema of a user other than that of the sde user. For this reason, these geodatabases are referred to as user-schema geodatabases. These geodatabases contain their own ArcSDE and geodatabase system tables.

There can be only one geodatabase per user schema. Geodatabases in the user's schema run concurrently with one master geodatabase that is stored in the sde user's schema. Because the master geodatabase is stored in the sde user's schema, it is referred to as the master sde geodatabase.

The geodatabase in the sde schema is always the master geodatabase and contains a table (SDE.INSTANCES) that keeps track of all the other geodatabases in the Oracle database. The sde schema also contains the ST_Geometry type; its subtypes and functions; and the system tables it uses, such as ST_SPATIAL_REFERENCES.

Both the sde master geodatabase and user-schema geodatabases are created under a single Oracle database and can be accessed by a single ArcSDE service.

SDE and user-schema geodatabases in one Oracle database

Situations for which you might want to have multiple geodatabases in the same Oracle database include the following:

Rules for using multiple geodatabases in one Oracle database are as follows:

Related Topics

6/12/2015