Multiple geodatabases and ArcSDE services from one PostgreSQL server
To better organize our ArcSDE data, we wanted to create multiple geodatabases and multiple ArcSDE services using one PostgreSQL database cluster (a cluster containing 1 machine at this point). A side question is why can’t tables and raster be placed in Feature Datasets? This wouldn’t be an end-all solution for what we want to do but there are some messy consequences of this limitation.
ESRI has instructions on Setting up multiple geodatabases in one PostgreSQL database cluster on Windows which was helpful but we repeatedly got an ‘The ArcSDE Repository was unsuccessfully completed. Would you like to view this error?’ error during the Repository Setup step, step two of four, of the ArcSDE Post Installation process. The odd thing, however, was that the wise_err.log was blank so I had no clue on why it was failing. After much Googling and head-banging, I came across a post from Kim Doty on ESRI’s forums reporting the same problem but they were able to create a service by just continuing through the process . Figuring I had nothing to lose, I thought I might as well try to go through the entire ArcSDE Post Installation process and see what happened. Although I received blank error messages, I was able to successfully create the second ArcSDE instance.
I will touch on some of the highlights of the process. In my case, I was creating a database & service with these parameters:
- Database name: mgsgdb_lidar
- Service name: mgs1_sde
- Tablespace folder: D:mgsdb1dmgsgdb_lidar
Following ESRI’s instructions, I first made custom copies of dbinit.sde, dbtune.sde, and giomgr.defs that contain the service name (mgs1_sde) within the file name. These copies were named dbinit_mgs1_sde.sde, dbtune_mgs1_sde.sde, and giomgr_mgs1_sde.defs.
When I have trouble with the ArcSDE Post Installation, I like to go through the four steps individually so I select a ‘Custom’ install.
The four steps making up the ArcSDE Post Installation process are shown on the next dialog.
I was able to complete the first step, Define SDE User Environment, without any problems.
Make sure to set your database name, default tablespace, and tablespace folders are distinct from your first installation.
During the second step of the ArcSDE Post Installation process, Repository Setup, make sure to use the custom files you made earlier when you come to the ArcSDE configuratino files dialog.
Later in the Repository Setup, make sure to use the correct database name:
This is the first error message I received in the process (still during Repository Setup):
Clicking ‘Yes’, however, shows an empty wise_err.log file:
After viewing this, I canceled out of the Repository Setup step.
Taking a look in pgAdmin III, however, I can see that both my database (mgsgdb_lidar) and tablespace (mgsgdb_lidar) were created:
I received the same error message during the third step, Authorize ArcSDE, as in the second step:
But running the fourth step, Create ArcSDE Service, resulted in this sweet message:
After editing my pg_hba.conf and opening the port in my firewall, the service was created, running, and visible. So far, it seems to be fully functional and without problems.