Multiple geodatabases in Informix

You can have more than one database in an IBM Informix instance and register it with the Spatial DataBlade. Therefore, you can have more than one geodatabase—one geodatabase per database.

Two geodatabases (one per database) on one instance of Informix

If you need to have multiple geodatabases in the same instance of Informix, set up your first geodatabase and its ArcSDE service (if you are using one), then create additional Informix databases, registered with the Spatial DataBlade. Create a geodatabase in each of the additional databases.

If you only use direct connections to the separate geodatabases, no special configuration is required. If, however, you use an ArcSDE service to connect to the geodatabases, you need to have separate ArcSDE services with unique service names and a separate port number in the services file. See Setting up multiple ArcSDE services on one Linux or UNIX server or Setting up multiple ArcSDE services on one Windows server for instructions.

When connecting to the different geodatabases, specify the ArcSDE service name and database name for the geodatabase to which you want to connect. When using ArcSDE administration commands, these are specified with the –i <service_name> and –D <database_name> options.

Client connections can be made to one geodatabase at a time. When connected to one geodatabase in an Informix database, you cannot query information from another geodatabase through that same connection.

For instance, in ArcCatalog, you could create a spatial database connection to database1. When you add data to ArcMap through that connection, you cannot "see" the data in database2. To access the data in database2, you would set up a second spatial database connection in ArcCatalog, this time specifying database2 in the Database field and database2's service name or port number in the Service field.


Be aware that user-supplied queries that reference nonspatial tables in other databases will be passed through to the SQL interpreter. If possible, the query is executed; otherwise, a low-level SQL error is returned.