Configuring Esri ArcGIS Pro and Esri ArcGIS Enterprise

Suggest edits

Implementing Esri ArcGIS Pro and Esri ArcGIS Enterprise with EDB Postgres Advanced Server requires the following components:

  • A running EDB Postgres Advanced Server instance
  • PostGIS version 3.2 or above, installed on EDB Postgres Advanced Server
  • Your GIS data
  • A running Esri ArcGIS Pro instance
  • Optionally: A running Esri ArcGIS Enterprise configuration for data and map sharing

Configuring EDB Postgres Advanced Server and PostGIS

The below steps will guide you through configuring PostGIS on your EDB Postgres Advanced Server instance and setting up the appropriate users and extensions needed for PostGIS to work with Esri ArcGIS Pro and Esri ArcGIS Enterprise.

Prerequisites

These components are needed before integrating EDB Postgres Advanced Server with Esri ArcGIS Pro and Esri ArcGIS Enterprise:

  • A running instance of EDB Postgres Advanced Server.
  • PostGIS version 3.2 or above installed on your EDB Postgres Advanced Server instance.

The following steps demonstrate how to create a gisadmin user, which is an administrator read/write user with Superuser privileges, a PostGIS database, and all of the extensions needed for PostGIS to operate correctly, and then inputting some data to ensure PostGIS is working and you can view data with geometry data types.

  1. Create a gisadmin user.
c:\Program Files\edb\as14\bin>psql.exe -p 5444 -d edb -U enterprisedb
psql (14.4.0)
WARNING: Console code page (437) differs from Windows code page (1252)
         8-bit characters might not work correctly. See psql reference
         page "Notes for Windows users" for details.
Type "help" for help.
 
edb=#
edb=# CREATE ROLE gisadmin LOGIN PASSWORD 'Fusion123' SUPERUSER;
CREATE ROLE
edb=#
edb=# exit
 
  1. Log in as the new gisadmin user.
c:\Program Files\edb\as14\bin>
c:\Program Files\edb\as14\bin>psql.exe -p 5444 -d edb -U gisadmin
psql (14.4.0)
WARNING: Console code page (437) differs from Windows code page (1252)
         8-bit characters might not work correctly. See psql reference
         page "Notes for Windows users" for details.
Type "help" for help.
  1. Create a postgis database and connect to it.
edb=#
edb=# CREATE DATABASE postgis;
CREATE DATABASE
edb=#
edb=# \c postgis
You are now connected to database "postgis" as user "gisadmin".
postgis=#
  1. Create all of the PostGIS extensions.
postgis=#
postgis=# CREATE EXTENSION postgis;
CREATE EXTENSION
postgis=# CREATE EXTENSION postgis_topology;
CREATE EXTENSION
postgis=# CREATE EXTENSION fuzzystrmatch;
CREATE EXTENSION
postgis=# CREATE EXTENSION address_standardizer;
CREATE EXTENSION
postgis=# CREATE EXTENSION address_standardizer_data_us;
CREATE EXTENSION
postgis=# CREATE EXTENSION postgis_tiger_geocoder;
CREATE EXTENSION
postgis=# CREATE EXTENSION postgis_sfcgal;
ERROR:  could not open extension control file "C:/Program Files/edb/as14/share/extension/postgis_sfcgal.control": No such file or directory                  —THIS WILL NOT WORK WITH 2.* and above versions as per docs
postgis=# CREATE EXTENSION postgis_raster;
CREATE EXTENSION
postgis=#
  1. Create a table to test PostGIS is working properly.
postgis=#

postgis=# CREATE  TABLE roads ( ID int4, NAME varchar(128) );
CREATE TABLE
postgis=# SELECT AddGeometryColumn( 'roads', 'geom', -1, 'GEOMETRY', 2 );
NOTICE:  SRID value -1 converted to the officially unknown SRID value 0
               addgeometrycolumn
------------------------------------------------
 public.roads.geom SRID:0 TYPE:GEOMETRY DIMS:2
(1 row)
  1. Insert some data into the table that was created above.
postgis=# INSERT INTO ROADS (ID,GEOM,NAME ) VALUES (1,ST_GeomFromText('LINESTRING(0 10,0 0)',-1),'Beacon Road');
NOTICE:  SRID value -1 converted to the officially unknown SRID value 0
INSERT 0 1
postgis=# INSERT INTO ROADS (ID,GEOM,NAME ) VALUES (2,ST_GeomFromText('LINESTRING(0 0,0 10)',-1),'Violet Road');
NOTICE:  SRID value -1 converted to the officially unknown SRID value 0
INSERT 0 1
postgis=# INSERT INTO ROADS (ID,GEOM,NAME ) VALUES (3,ST_GeomFromText('LINESTRING(0 0,10 0)',-1),'Skelton Street');
NOTICE:  SRID value -1 converted to the officially unknown SRID value 0
INSERT 0 1
postgis=# INSERT INTO ROADS (ID,GEOM,NAME ) VALUES (4,ST_GeomFromText('LINESTRING(0 0,10 10)',-1),'Fifth Avenue');
NOTICE:  SRID value -1 converted to the officially unknown SRID value 0
INSERT 0 1
postgis=# INSERT INTO ROADS (ID,GEOM,NAME ) VALUES (5,ST_GeomFromText('LINESTRING(0 10,0 0)',-1),'Main Street');
NOTICE:  SRID value -1 converted to the officially unknown SRID value 0
INSERT 0 1
postgis=# INSERT INTO ROADS (ID,GEOM,NAME ) VALUES (6,ST_GeomFromText('LINESTRING(10 0,0 0)',-1),'Lipton Street');
NOTICE:  SRID value -1 converted to the officially unknown SRID value 0
INSERT 0 1
postgis=#
  1. Show the data that was added in table format.
postgis=#
postgis=# SELECT id, ST_AsText(geom) AS geom, name FROM ROADS order by id;
 id |         geom          |      name
----+-----------------------+----------------
  1 | LINESTRING(0 10,0 0)  | Beacon Road
  2 | LINESTRING(0 0,0 10)  | Violet Road
  3 | LINESTRING(0 0,10 0)  | Skelton Street
  4 | LINESTRING(0 0,10 10) | Fifth Avenue
  5 | LINESTRING(0 10,0 0)  | Main Street
  6 | LINESTRING(10 0,0 0)  | Lipton Street
(6 rows)

postgis=#
  1. Show PostGIS version.
postgis=# SELECT PostGIS_Version();
            postgis_version
---------------------------------------
 3.2 USE_GEOS=1 USE_PROJ=1 USE_STATS=1
(1 row)

Configuring ArcGIS Pro with EDB Postgres Advanced Server

In the previous section you configured PostGIS with your EDB Postgres Advanced Server instance and created some sample tables, as well as added some data to those tables to ensure that PostGIS was configured correctly. In doing so, you have primed your database to be ready to interact with Esri ArcGIS Pro as you create an Enterprise Geodatabase.

GIS Data

Users can either create their own GIS datasets or they can download GIS data if needed.

The test cases in this guide are using the sample 'HongKong GDB' data file for demonstration, which can be found here: https://www.arcgis.com/home/item.html?id=96a56c14f72c4638961f4ee9a271e34d.

Enable Environment to Create an Enterprise Geodatabase

  1. Generate an authorization file for Esri ArcGIS Server license to generate a keycodes file for your Enterprise Geodatabase according to Esri docs.

  2. Verify that you have the authorization file which is typically located in C:\Program Files (x86)\Common Files\ArcGIS\bin.

  3. Double-click SoftwareAuthorization.exe to run the authorization wizard to start generating your keycodes file.

  4. In the Software Authorization Wizard, under Authorization Options, select I have received an authorization file and am now ready to finish the authorization process.

    EsriAuthorization

  5. Click Browse... to select the .ecp authorization file obtained from My Esri in Step 2.

  6. For the Product to be Authorized, ensure ArcGIS Server is selected, and click Next.

  7. On the Authorization Method page, accept the default option, Authorize with Esri now using the Internet, and click Next.

    EsriAuthorizationMethodScreen

  8. On the Authorization Information page, confirm that your contact information is correct, click Next.

  9. On the Authorization Information (continued) page enter your industry information and confirm your selections, click Next.

    EsriAuthorizationChoicesNew

  10. Provide your license number on the Software Authorization Number screen and click Next.

  11. Select the default option, I do not want to authorize any extensions at this time on the Authorize Software Extensions page if you do not want any extensions.

    EsriAuthorizationExtensions

  12. Click Next and the authorization process will start, when it has finished you will receive a message that states the software has been authorized.

  13. Click Finish when your license has been successfully authorized, and this will have created your keycodes file.

  14. Navigate to the following location to access the newly created keycodes file and verify the keycodes file is present: C:\Program Files(x86)\Esri\License10.x\sysgen.

  15. This keycodes file will be used when you create an Enterprise Geodatabase.

Configuring Esri ArcGIS Enterprise Environment

If an Esri ArcGIS Enterprise Environment is needed, it must be configured and running. Installing and configuring it is not part of this Implementation Guide, for more information please refer to the following link: https://enterprise.arcgis.com/en/get-started/latest/windows/tutorial-creating-your-first-web-gis-configuration.htm

Esri ArcGIS Pro Configuration for Enterprise Sharing

Before you can share from your Esri ArcGIS Pro environment to an Enterprise Portal that you have created, you will need to add that Portal in your Esri ArcGIS Pro environment.

  1. Click Projects then select Portals.
  2. Click Add Portal to add the URL of the Portal you wish to use.
  3. Set the Portal as the active portal by selecting the option from the three dots to the right.
  4. Right click the Portal and select Sign in.

After you have signed in to your Esri ArcGIS Enterprise Portal you will then be ready to share to an Esri ArcGIS Enterprise environment.


Could this page be better? Report a problem or suggest an addition!