Select to view content in your preferred language

Create Enterprise Geodatabase Error..

31320
20
Jump to solution
08-06-2012 02:17 PM
BryanKaraffa
Deactivated User
I am trying to create my first enterprise geodatabase and I am using the tool. I have successfully made a connection with the administrator account (postgres) in ArcCatalog. Here is the results of the geoprocess:

Executing: CreateEnterpriseGeodatabase PostgreSQL star-ags icm DATABASE_AUTH postgres ***** SDE_SCHEMA sde ***** # "C:\Program Files\ESRI\License10.1\sysgen\keycodes"
Start Time: Mon Aug 06 15:13:53 2012
User has privileges required to create database objects.
Geodatabase admin user already exists.
Database already exists.
Validated authorization file.
User has required privileges for geodatabase setup.
XML support is enabled for the database instance.
You must copy the latest ST_GEOMETRY and dependent libraries to the PostgreSQL software location. Refer to the ArcGIS help topics for more details.

Connected RDBMS instance is not setup for Esri spatial type configuration.
Failed to execute (CreateEnterpriseGeodatabase).
Failed at Mon Aug 06 15:13:54 2012 (Elapsed Time: 1.00 seconds)



The error reads:
You must copy the latest ST_GEOMETRY and dependent libraries to the PostgreSQL software location. Refer to the ArcGIS help topics for more details.

Connected RDBMS instance is not setup for Esri spatial type configuration.


This is a fresh install of Desktop/Server 10.1 running alongside a fresh install of Postgres 9.0.5 (64bit). Anxiously awaiting a response.. 🙂
1 Solution

Accepted Solutions
BryanKaraffa
Deactivated User
Solved this issue after some searching...  Perhaps the error should reference the help topic that contains the solution?

http://resources.arcgis.com/en/help/main/10.1/index.html#/Tutorial_Getting_started_with_geodatabases...

SOLUTION:
Place the ST_Geometry libraries in the PostgreSQL lib directory

Geodatabase creation in PostgreSQL relies on the presence of the ST_Geometry library. You must place the appropriate library in the lib directory where PostgreSQL is installed before you can create a geodatabase. ST_Geometry libraries can be found in the DatabaseSupport folder of your ArcGIS client installation.

Since this tutorial assumes your PostgreSQL installation is on a Windows server, you will use the ST_Geometry library found in the Windows64 folder.
Steps:

    In Windows Explorer, navigate to the location of the Windows ST_Geometry library in your ArcGIS client installation directory.

    The default location for ArcGIS for Desktop on 64-bit Windows operating systems is C:\Program Files (x86)\ArcGIS\Desktop<release#>\DatabaseSupport\PostgreSQL\Windows64; on 32-bit Windows operating systems, it is C:\Program Files\ArcGIS\Desktop<release#>\DatabaseSupport\PostgreSQL\Windows64.
    Copy st_geometry.dll from this location.
    Navigate to the PostgreSQL lib directory on the database server and paste the library to that location.

    On Windows, the default location is C:\Program Files\PostgreSQL\9.0\lib.

View solution in original post

20 Replies
BryanKaraffa
Deactivated User
Solved this issue after some searching...  Perhaps the error should reference the help topic that contains the solution?

http://resources.arcgis.com/en/help/main/10.1/index.html#/Tutorial_Getting_started_with_geodatabases...

SOLUTION:
Place the ST_Geometry libraries in the PostgreSQL lib directory

Geodatabase creation in PostgreSQL relies on the presence of the ST_Geometry library. You must place the appropriate library in the lib directory where PostgreSQL is installed before you can create a geodatabase. ST_Geometry libraries can be found in the DatabaseSupport folder of your ArcGIS client installation.

Since this tutorial assumes your PostgreSQL installation is on a Windows server, you will use the ST_Geometry library found in the Windows64 folder.
Steps:

    In Windows Explorer, navigate to the location of the Windows ST_Geometry library in your ArcGIS client installation directory.

    The default location for ArcGIS for Desktop on 64-bit Windows operating systems is C:\Program Files (x86)\ArcGIS\Desktop<release#>\DatabaseSupport\PostgreSQL\Windows64; on 32-bit Windows operating systems, it is C:\Program Files\ArcGIS\Desktop<release#>\DatabaseSupport\PostgreSQL\Windows64.
    Copy st_geometry.dll from this location.
    Navigate to the PostgreSQL lib directory on the database server and paste the library to that location.

    On Windows, the default location is C:\Program Files\PostgreSQL\9.0\lib.
RyanClark
Deactivated User
I have PostgreSQL running on an Ubuntu server. PostgreSQL and PostGIS were installed via "apt-get install postgresql-9.1-postgis". Where to I need to put st_geometry.so in order for the "Enable Geodatabase" link to work? I've already been able to connect to the database in ArcCatalog, and I put st_geometry.so in /usr/lib/postgresql/9.1/lib/, but still the same error message.
WesleyAntal2
Occasional Contributor
Solved this issue after some searching...  Perhaps the error should reference the help topic that contains the solution?

http://resources.arcgis.com/en/help/main/10.1/index.html#/Tutorial_Getting_started_with_geodatabases...

SOLUTION:
Place the ST_Geometry libraries in the PostgreSQL lib directory

Geodatabase creation in PostgreSQL relies on the presence of the ST_Geometry library. You must place the appropriate library in the lib directory where PostgreSQL is installed before you can create a geodatabase. ST_Geometry libraries can be found in the DatabaseSupport folder of your ArcGIS client installation.

Since this tutorial assumes your PostgreSQL installation is on a Windows server, you will use the ST_Geometry library found in the Windows64 folder.
Steps:

    In Windows Explorer, navigate to the location of the Windows ST_Geometry library in your ArcGIS client installation directory.

    The default location for ArcGIS for Desktop on 64-bit Windows operating systems is C:\Program Files (x86)\ArcGIS\Desktop<release#>\DatabaseSupport\PostgreSQL\Windows64; on 32-bit Windows operating systems, it is C:\Program Files\ArcGIS\Desktop<release#>\DatabaseSupport\PostgreSQL\Windows64.
    Copy st_geometry.dll from this location.
    Navigate to the PostgreSQL lib directory on the database server and paste the library to that location.

    On Windows, the default location is C:\Program Files\PostgreSQL\9.0\lib.




I installed postgres 9.0 and postgis 1.5, both for windows x86.
This DLL is in directory C:\Program Files\PostgreSQL\9.0\lib, but the error in creation of Geodatabase Enterprise continued. Exists conflict of architecture of DLL with the database?
0 Kudos
KimPeter
Esri Contributor
@Wesley:
At 10.1, only 64-bit versions of the database are supported.  The ST_Geometry library is 64-bit only; I'm pretty sure that it will not work with a 32-bit installation of PostgreSQL.

As a tip for when you install a 64-bit database cluster...I'm assuming that since you installed PostGIS that you want to use the geometry type for data storage(?)  If so, be sure to pre-create your database using the PostGIS template before running the tool to create a geodatabase. The Create Enterprise Geodatabase tool uses the default PostgreSQL template database to create the database, which will not include PostGIS. (You'll still have to copy over the ST_Geometry library for the tool to run, but you don't have to use the ST_Geometry storage type once the geodatabase is created.)

@Ryan:
You should be able to run pg_config when logged in as the postgres user to determine which location to place the st_geometry.so file.  (I say should because Ubuntu isn't technically supported, so I don't know for sure this will work in this case.)  Also, be sure you copied the 9.1 version of the file since you indicated that you are using PostgreSQL 9.1.

@Bryan:
The topic you mention is a tutorial, specific to one particular OS and DBMS version; we wouldn't want to link to it from the error since it isn't applicable to all situations.  HOWEVER, if the message still says "You must copy the latest ST_GEOMETRY and dependent libraries to the PostgreSQL software location...", we gotta fix that, since there aren't any other libraries you need to copy.  I'll check on that and open a bug to fix the message if necessary.
WesleyAntal2
Occasional Contributor
I installed postgres 9.1, postgis 2.0 and ArcSDE 10.1 in architecture x64 (http://support.esri.com/en/knowledgebase/techarticles/detail/40553)
I create my database with the script:

CREATE DATABASE my_database
WITH OWNER = postgres
ENCODING = 'UTF8'
TEMPLATE = template_postgis_20 TABLESPACE = [...];

The server is Windows 2008 R2 Standard (http://resources.arcgis.com/en/help/system-requirements/10.1/index.html#//015100000075000000), but when I try create Geodatabase, this error is show:

"You must copy the latest ST_GEOMETRY and dependent libraries to the PostgreSQL software location. Refer to the ArcGIS help topics for more details.

Connected RDBMS instance is not setup for Esri spatial type configuration.
Failed to execute (CreateEnterpriseGeodatabase)."

I try put DLL's st_geometry and libst_raster_pg of ArcSDE, but too not worked. Too try the DLL st_geometry in directory client and not worked.
0 Kudos
ArturMichorczyk
New Contributor
Hi,
Place the ST_GEOMETRY libraries in the PostgreSQL lib directory from:
1. For PostgreSQL 9.0.x with directory c:\Program Files (x86)\ArcGIS\Desktop10.1\DatabaseSupport\PostgreSQL\Windows64\
2. For PostgreSQL 9.1.x with directory c:\Program Files (x86)\ArcGIS\Desktop10.1\DatabaseSupport\PostgreSQL\9.1\Windows64\
Regards
Artur
0 Kudos
MichaelCarson4
Emerging Contributor
Hi,
Place the ST_GEOMETRY libraries in the PostgreSQL lib directory from:
1. For PostgreSQL 9.0.x with directory c:\Program Files (x86)\ArcGIS\Desktop10.1\DatabaseSupport\PostgreSQL\Windows64\
2. For PostgreSQL 9.1.x with directory c:\Program Files (x86)\ArcGIS\Desktop10.1\DatabaseSupport\PostgreSQL\9.1\Windows64\
Regards
Artur


I'm having the same problem as others ... Yes I put the st_geometry.dll file in the PostgreSQL\9.1\lib directory on my server and still get the "must copy the latest ST_GEOMETRY" error using the create enterprise geodatabase tool.  Now what?
0 Kudos
MichaelCarson4
Emerging Contributor
I'm having the same problem as others ... Yes I put the st_geometry.dll file in the PostgreSQL\9.1\lib directory on my server and still get the "must copy the latest ST_GEOMETRY" error using the create enterprise geodatabase tool.  Now what?


Reinstalled PostgreSQL and copied st_geometry.dll over again.  This time it worked.  Go figure! :cool:
0 Kudos
PatrickRoyer1
New Contributor
It is with great misfortune that I am getting the same errors as well.
And there doesn't seem to be a technical support person at ESRI capable of getting through.

Please let me know if any one finds a solution. PostGres/PostGIS is such a fabulous tool.
0 Kudos