Available with Standard or Advanced license.
The goal of upgrading an enterprise geodatabase is to update the geodatabase system tables, stored procedures, types, and functions to take advantage of new functionality and bug fixes. You may also need to upgrade the database if the version you use is no longer supported for the ArcGIS clients you use.
Install a new version of ArcGIS Pro or ArcGIS Server or apply a service pack, patch, or hot fix to an existing installation and upgrade the geodatabase.
Note:
Even if you do not upgrade the geodatabase, the database version you use may no longer be supported with the current release of ArcGIS software. Always check the system requirements to ensure you're still using a supported database release. If the database version is no longer supported, you may need to upgrade the geodatabase. The longer you go between upgrades, the more involved the upgrade process becomes.
When you upgrade the geodatabase using ArcGIS Pro 3.5, the upgraded geodatabase version is 11.5.0.x.
Complete the required steps listed below prior to upgrading, then upgrade the geodatabase using the Upgrade Geodatabase geoprocessing tool or a Python script.
Before you upgrade
Plan ahead before you upgrade any enterprise system, including a geodatabase. Test the new version on a development or test server to ensure that it works with all your client applications.
When you determine that the new system works the way you expect, schedule the upgrade; be sure the necessary staff are available to perform the upgrade and that they have the permissions necessary to complete their assigned tasks.
Be aware of the following:
- Upgrades of user-schema geodatabases are no longer supported. At this time, you can upgrade the sde geodatabase, but you cannot upgrade the user-schema geodatabases. You can still connect to the user-schema geodatabases, but you cannot upgrade them.
- Upgrades from beta or prerelease versions of the software are not supported.
- You can upgrade directly from a 10.8.1, 10.9.x, or 11.x geodatabase if your database release is supported for the ArcGIS version to which you upgrade.
To upgrade from an earlier version of the geodatabase, you must first upgrade the geodatabase to 10.8.1, 10.9.x, or 11.0. Follow the instructions for that version upgrade before you upgrade to the current geodatabase version.
If the Oracle database is not at a release that is supported for the current geodatabase release, you may have to upgrade the database and the geodatabase more than once before you can upgrade the geodatabase to the current release.
For example, if you have a 10.7.1.x geodatabase in Oracle 11.2.0.4, upgrade the database to a newer version that is supported for ArcGIS 10.7.1, such as Oracle 12.1.02.
Next, upgrade the geodatabase to a version that supports Oracle 12.1.02 and supports an Oracle version that is also supported with the current ArcGIS release. For example, you can upgrade to geodatabase version 10.9.1. Next, upgrade Oracle to a version that is supported for the current ArcGIS release. Now you can upgrade the geodatabase to the current ArcGIS version.
For each intermediate geodatabase upgrade, follow the upgrade instructions for that geodatabase version, and test the geodatabase as you move from version to version. Similarly, follow the upgrade instructions from the database vendor for each database version, and test as you move from version to version.
- You cannot upgrade a geodatabase in an Oracle 12c database. Upgrade to a supported Oracle version first, then you can upgrade the geodatabase.
- There is no formal mechanism to downgrade a geodatabase to a previous version. If, after upgrading to a newer version, you want to downgrade the geodatabase, you can restore the database from a backup file that contains the older geodatabase version.
- Verify that the Oracle OPEN_CURSORS parameter is set to a large value, such as 2000, and that the setting is synchronized with the geodatabase.
- Once you upgrade the geodatabase to the current release, the geodatabase will use only global temporary tables for log file tables.
The following is a checklist of steps to complete before you upgrade the geodatabase:
- Read the ArcGIS requirements for Oracle to confirm that Esri supports the Oracle and ArcGIS version combination you want to use.
- Read Client and geodatabase compatibility to understand the implications of using mixed ArcGIS client releases and to determine whether specific dataset types must be upgraded separately.
- Check to see whether the geodatabase can be upgraded.
To do this, install the ArcGIS client version you want to move to on one machine. If you install ArcGIS Pro, you can connect to the geodatabase and open the Database Properties dialog box to see whether a geodatabase upgrade is possible. If you install ArcGIS Server (enterprise edition), you can use the ArcPy Describe function to determine whether the geodatabase can be upgraded.
# Open Python. cd /arcgis/server/tools ./python # Import ArcPy. import arcpy # Create a connection to the geodatabase. arcpy.CreateDatabaseConnection_management("/tmp/", "egdb_connection.sde", "ORACLE", "myogdb", "DATABASE_AUTH", "sde", "mysdepassword", "SAVE_USERNAME", "myconnection") # Check the geodatabase release. isCurrent = arcpy.Describe('/tmp/egdb_connection.sde').currentRelease print(isCurrent)
If false is returned, you can upgrade the geodatabase. If true is returned, you do not need to upgrade the geodatabase. Do not proceed with the subsequent steps.
- Ensure that the Oracle Text component is installed.
The Text component is installed by default in Oracle; however, if you did not do a default installation, the Text component may not have been installed.
To see whether it is installed, run the following SQL statement while signed in as SYSTEM or a user with DBA privileges in the database:
If no record is returned, the Text component is not installed. Run the Oracle installation to install the Text component.SELECT owner, object_name FROM all_objects WHERE object_type = 'PACKAGE' AND object_name = 'CTX_DDL';
- Create a backup of the database.
- Remove any custom functionality you may have added to the geodatabase system tables outside ArcGIS, such as triggers or additional indexes.
The upgrade procedure cannot take into account customizations you make to the system tables. If such customizations prevent the alteration of a system table's schema, the upgrade will fail.
- Grant the geodatabase administrator the permissions necessary to upgrade a geodatabase.
See Privileges for geodatabases in Oracle for a list of required privileges.
- If you access data directly from SQL, replace the existing st_shapelib on your Oracle server with the new version of the library.
Download the new st_shapelib file from My Esri.
Be sure to use the library appropriate to your Oracle server operating system.
If you place the library in a different directory on the Oracle server than it was previously, you must reconfigure the extproc to point to the new library location and restart the Oracle listener. See Configure the extproc to access ST_Geometry in Oracle for more information.
- Ensure that there are no users connected to the geodatabase you are upgrading. If the geodatabase contains user-schema geodatabases, also ensure no one is connected to any of the user-schema
geodatabases.
To see a list of the users who are currently connected to the geodatabase, open the Geodatabase Administration dialog box in ArcGIS Pro.
You can now upgrade the geodatabase.
Upgrade the geodatabase
You can use the Upgrade Geodatabase tool in ArcGIS Pro or a Python script run on an ArcGIS Pro or ArcGIS Server machine to upgrade your geodatabase.
Note:
You must use current connection syntax when you connect to the geodatabase to upgrade it. The upgrade process will fail if you use older connection syntax. See Connect to Oracle from ArcGIS for information on connection syntax.
If the geodatabase contains branch versioned data, additional postupgrade steps may be required. See How Upgrade Geodatabase works for instructions.
Use the Upgrade Geodatabase tool
Open the Upgrade Geodatabase geoprocessing tool from one of the following:
- The Geodatabase Administration toolset in the Data Management toolbox
- The Run Upgrade button on the General tab of the Database Properties dialog box in ArcGIS Pro
If you open the tool from Database Properties, the Input geodatabase text box is prepopulated with the geodatabase connection information.
Esri recommends that you leave the Pre-requisites check and Upgrade geodatabase options checked. That way, the tool confirms that the prerequisites to upgrade have been met before continuing with the geodatabase upgrade.
The prerequisite check detects other active connections to the geodatabase, determines whether the connecting user has sufficient privileges to upgrade the geodatabase, ensures that the database can support XML columns, ensures that all datasets can be opened, and confirms that the database and libraries are at the same release. If any prerequisites are not met, the tool terminates. You must correct any problems before you run the upgrade procedure again.
The results of this check are reported on the geoprocessing tool dialog box. If the check fails, results are also written to the GDBUpgrade.log file in the c:\Users\<user name>\AppData\Local\ESRI\<ArcGIS product> folder.
If all checks pass, the tool proceeds with the upgrade. The status for the prerequisites check and the upgrade are shown on the geoprocessing tool progress dialog box. If the upgrade fails, information is written to the GDBUpgrade.log file. Additional information is written to the sde_setup.log file in your user TEMP directory. If your user does not have a temp directory configured, the system TEMP directory is used.
Run a script
To upgrade the geodatabase using a Python script, copy one of the following example scripts, paste it into a text editor, alter it to use information specific to your site, save and close the file, and run it.
Tip:
For information about running Python from an ArcGIS Server machine, see ArcGIS Server and ArcPy.
The examples assume that you have an existing database connection file (.sde) that connects as the sde user. If you do not have a connection file, create one before upgrading.
# Name: upgradesdegdb_example.py
# Description: Uses existing database connection file
# on a Windows computer to run prerequisite check
# and upgrade an enterprise geodatabase.
# Import arcpy module
import arcpy
# Local variables:
Output_Workspace = "C:\\ArcGIS\connection_files\<Connection file>"
Default_gdb = "C:\\ArcGIS\connection_files\<Connection file>"
# Process: Upgrade Geodatabase
arcpy.UpgradeGDB_management(Default_gdb, "PREREQUISITE_CHECK", "UPGRADE")
# Name: upgradesdegdb_example.py
# Description: Uses existing database connection file
# on a Linux computer to run prerequisite check
# and upgrade an enterprise geodatabase.
# Import arcpy module
import arcpy
# Local variables:
Output_Workspace = "<user>/connections/<Connection_file>"
Default_gdb = "<user>/connections/<Connection_file>"
# Process: Upgrade Geodatabase
arcpy.UpgradeGDB_management(Default_gdb, "PREREQUISITE_CHECK", "UPGRADE")