Show Navigation | Hide Navigation

DBMS initialization parameter recommendations

Release 9.2
Last modified December 3, 2010
E-mail This Topic Printable Version Give Us Feedback


Related Topics


Often, your default database management system (DBMS) initialization parameters will work fine with ArcSDE. However, if you have a large number of users accessing the system, there are some DBMS-specific initialization parameter settings you should make to help improve performance with ArcSDE. These recommended settings are listed in the sections below. You can use the following links to go directly to the section in which you are interested.




SQL Server parameters


Recommended settings for the SQL Server DBMS for it to work well with ArcSDE are as follows:



Top of page


Oracle parameters


ArcSDE does not require that you change your Oracle instance from its default configuration to run. However, for larger systems, you may want to make some changes to the Oracle instance configuration.

Whenever you start an Oracle instance, Oracle reads its initialization parameters from either the init.ora file or from the server parameter file, spfile.ora. Both files define the characteristics of the instance, but they are managed differently.

The init.ora file is located under the ORACLE_BASE/admin/<ORACLE_SID>/pfile directory or folder. Commonly, init.ora is a name given to the initialization file of an Oracle database instance, but for any given instance, the file is actually init<oracle SID>.ora. For example, if the Oracle system ID (SID) is GIS, the init.ora file for this instance would be initGIS.ora.

Changing parameters using the ALTER SYSTEM command will automatically be reflected in the server parameter file if the instance was started by that method. If the instance was started using an init.ora file, you will have to manually edit the file with a text editor if you want changes to system parameters to affect more than the current instance of the database.

This section describes some of the parameters that control allocation of shared memory. For a detailed discussion of the Oracle initialization parameters, refer to Oracle Server Tuning for your Oracle release.



Parameter that affects Oracle statistics


Parameters that affect memory
Care must be taken when setting the initialization parameters that affect memory. Setting these parameters beyond the limits imposed by the physical memory resource of the host machine significantly degrades performance.



Alter the UNDO_POOL
Though not an initialization parameter, the UNDO_POOL database resource manager plan directive can be set to allow an SDE user consumer group a large amount of undo space for compress operations.

To use this, you'll need to set up a consumer group for the SDE user and alter the UNDO_POOL plan directive to allow for an unlimited undo pool for this consumer group.

UNDO_POOL identifies the total amount of undo space that the members of one resource group, collectively, may allocate at one time.

When using a multiversioned geodatabase for editing, you must periodically perform a compress operation to purge old information and simplify the contents of the geodatabase. If a large number of edits have occurred since the last compress, the new compress procedure can create large transactions that require a large amount of undo space. If UNDO_POOL is set too low, the compress can fail and poor performance can result. If possible, set an unlimited undo pool for the SDE user's consumer group. Otherwise, you will need to monitor the size of the compress transactions and choose a suitably large undo pool size.

Top of page


DB2 parameters


Parameters that affect locks
Deadlocks may not be an uncommon occurrence, depending on the client application and the database configuration. Note that the problem may be aggravated with deep states lineages. Fortunately, DB2 provides tuning parameters to control the size of the lock list (LOCKLIST), the maximum percentage of locks an application can hold (MAXLOCKS), the amount of time a request will wait for a lock to be acquired (LOCKTIMEOUT), frequency interval for deadlock detection (DLCHKTIME), and deadlock rollback behavior (DB2LOCK_TO_RB).

The default value for LOCKLIST and MAXLOCKS in DB2 9 is AUTOMATIC, which enables these parameters for self tuning. This allows DB2's memory tuner to dynamically size the memory resources between different memory consumers. Automatic tuning only occurs if self tuning memory is enabled for the database (SELF_TUNING_MEM=ON).

To view lock list settings, issue the following command:

db2 get db cfg

Max storage for lock list (4KB)		(LOCKLIST) = 50
Interval for checking deadlock (ms)	(DLCHKTIME) = 10000
Percent. of lock lists per application	(MAXLOCKS) = 22
Lock time out (sec)			(LOCKTIMEOUT) = -1
Max number of active applications	(MAXAPPLS) = AUTOMATIC


For the DB2LOCK_TO_RB registry value, use db2set and look for
DB2LOCK_TO_RB=.



See the DB2 documentation or performance tuning guides for detailed information on properly setting these parameters.

Top of page


Informix parameters


Informix maintains its configuration parameters in the onconfig file located in the %INFORMIXDIR%\etc directory on Windows and the $INFORMIXDIR/etc on Unix. The parameters of this file control the server's memory use, the size and number of log files, temporary space, the location of the error logs, and much more. The onconfig file is read whenever the Informix server is started; therefore, changes to the parameters in the onconfig file require you to restart the server.

Naming the onconfig file


The standard onconfig file, onconfig.std, contains the default settings of the Informix parameters. Do not edit this file; instead, preserve it as a record of the default settings. On Windows, the Informix Dynamic Server (IDS) installation process automatically copies the onconfig.std file to the Onconfig file. On Unix systems, manually copy the onconfig.std file to a new file name such as onconfig.sde.

The onconfig file can be referred to as %INFORMIXDIR%\etc\Onconfig on Windows or $INFORMIXDIR/etc/<your copied file> on Unix.

On Windows, the installation sets the ONCONFIG system variable to Onconfig. The Onconfig file is also defined in the Windows registry as the Informix onconfig file. If you intend to use an onconfig file with a different name, you need to change the ONCONFIG environment in the registry and the %INFORMIXDIR%\setenv.cmd file.

On Unix systems, add the ONCONFIG system variable to the INFORMIX .cshrc or .profile file. For example, if you have named your onconfig file onconfig.sde, you would set the ONCONFIG variable to that.
setenv ONCONFIG onconfig.sde



Onconfig parameters


The following is a list of some of the more important onconfig parameters whose default values you should change to improve the performance of your Informix server when using it with ArcSDE. The first section lists parameters you should set before creating the geodatabase.

System parameters that must be adjusted prior to initialization


Unix-only parameters


System parameters that can be set after initialization


Top of page

Please visit the Feedback page to comment or give suggestions on ArcGIS Desktop Help.
Copyright © Environmental Systems Research Institute, Inc.