Skip To Content

Enable Enterprise Geodatabase

Summary

Creates geodatabase system tables, stored procedures, functions, and types in an existing database, thereby enabling geodatabase functionality in the database.

Usage

  • You must have ArcGIS Desktop (Desktop Standard or Desktop Advanced), ArcGIS Engine Geodatabase Update, or ArcGIS Server installed on the computer from which you connect to the database and enable geodatabase functionality.
  • The database connection file you provide to the tool must connect as a user who qualifies as a geodatabase administrator. Connect as the sde user to create a geodatabase in an IBM Db2, PostgreSQL, or SAP HANA database. Connect as the sde user to create a master geodatabase in Oracle. Connect as a different schema owner to create a user-schema geodatabase in Oracle. For SQL Server, you can connect as a user named sde to create an sde-schema geodatabase or as a user who is dbo in the Microsoft SQL Server instance to create a geodatabase in the dbo schema in the database.

  • If you connect to a SQL Server database, the SQL Server instance must use a case-insensitive collation. The database must also have READ_COMMITTED_SNAPSHOT and ALLOW_SNAPSHOT_ISOLATION set to ON.

  • The user who creates the geodatabase requires specific privileges. See the topic appropriate to your database for information on required privileges to create a geodatabase:

  • You must configure the st_geometry library before you can enable geodatabase functionality in Oracle. See Create a geodatabase in Oracle for details.

  • You must place the st_geometry library in the PostgreSQL lib directory on the PostgreSQL server before you can enable geodatabase functionality in PostgreSQL. See Create a geodatabase in PostgreSQL on Linux or Create a geodatabase in PostgreSQL on Windows for details.

  • Once the geodatabase is created, you cannot rename the database in which it is stored. The database name is stored in geodatabase system tables and is used to fully qualify table and feature class names; therefore, changing the database name using database tools makes your geodatabase data inaccessible.

Syntax

EnableEnterpriseGeodatabase_management (input_database, authorization_file)
ParameterExplanationData Type
input_database

Provide the path and connection file name for the database in which you want to enable geodatabase functionality. You must connect as a user that qualifies as a geodatabase administrator.

Workspace
authorization_file

Provide the path and file name of the keycodes file that was created when you authorized ArcGIS Server. This file is in the \\Program Files\ESRI\License<release#>\sysgen folder on Windows or /arcgis/server/framework/runtime/.wine/drive_c/Program Files/ESRI/License<release#>/sysgen directory on Linux. If you have not already done so, authorize ArcGIS Server to create this file.

You will likely need to copy the keycodes file from the ArcGIS Server machine to a location accessible to the tool.

File

Code sample

EnableEnterpriseGeodatabase example 1 (stand-alone script)

This script uses an existing database connection file (my_db_connection.sde) located in the default ArcCatalog database connection location to enable geodatabase functionality with a keycodes file on a remote server.

import arcpy

arcpy.EnableEnterpriseGeodatabase_management("Database Connections\my_db_connection.sde", "//myagsserver/Program Files/ESRI/License/sysgen/keycodes")
EnableEnterpriseGeodatabase example 2 (stand-alone script)

This script uses an existing database connection file (database1.sde) in a user-defined location to enable geodatabase functionality with a keycodes file in a user-defined location on the local computer.

import arcpy

arcpy.EnableEnterpriseGeodatabase_management("C:\myconnections\database1.sde", "C:\authfiles\keycodes")

Environments

Licensing information

  • ArcGIS Desktop Basic: No
  • ArcGIS Desktop Standard: Yes
  • ArcGIS Desktop Advanced: Yes

Related topics