Setting up the product library in an ArcSDE environment

Two different procedures are used to create and set up an ArcSDE geodatabase for the product library. One is used for setting up the product library on an ArcSDE geodatabase for Microsoft SQL Server Express licensed for ArcGIS Desktop (instance of SQL Server Express). The other is used for setting up the product library on an ArcSDE geodatabase licensed for ArcGIS Server Enterprise. The steps in this workflow are for setting up the product library on an ArcSDE geodatabase for Microsoft SQL Server Express licensed for ArcGIS Desktop, but additional information and links are provided for setting up the product library on an ArcSDE geodatabase licensed for ArcGIS Server Enterprise.

Adding a database server

This section describes how to add a database server connection under the Database Servers node in the Catalog window. This is a connection to a Microsoft SQL Server Express instance set up to store geodatabases. You can skip this section if you are using Oracle, SQL Server Enterprise, or another ArcSDE geodatabase licensed for ArcGIS Server Enterprise to store the geodatabase you are using as the product library.

You will need to install SQL Server Express, if you have not already, and enable it to store geodatabases.

Steps:
  1. Start ArcMap, open the Catalog window, then expand the Database Servers node in the Catalog tree.
  2. Double-click Add Database Server.
  3. In the Add Database Server dialog box, provide the name of the ArcSDE database server.

    This is in the form <server_name>\<instance_name>, where the server name is the name of the server on which SQL Server Express is installed and the instance name is the name of the SQL Server Express instance.

    An example would be a case where a database server is named SOPHIE\SQLEXPRESS, SOPHIE is the server name, and SQLEXPRESS is the instance name. Using 127.0.01 for the server name will avoid sourcing issues if multiple users are going to be accessing the product library.

  4. Click OK.
  5. The server icon appears under Database Servers in the Catalog tree.

    TipTip:
    If you add the database server and the icon appears in the Catalog tree with a blank white square on it, the database server has been added but its status is unknown. Try double-clicking it to connect. If you are unable to connect, contact the administrator of that database server to find out if the SQL Server Express instance is running and connected to the network and what type of permission you have on that database server.

Creating the administrator database connection

If the product library is stored in an ArcSDE geodatabase licensed for ArcGIS Server Enterprise, you need to create an administrator database connection. If your product library is stored in SQL Server Express, you can skip this section, since you only need to add a database server connection (first section of this workflow).

If you want to create a database connection for SQL Server, go to Making a direct connection from ArcGIS Desktop to a geodatabase in SQL Server. If you want to create a database connection for Oracle, go to Making a direct connection from ArcGIS Desktop to a geodatabase in Oracle.

Creating an ArcSDE geodatabase

The server administrator needs to create a new geodatabase from Oracle, SQL Server, SQL Server Express, or another enterprise database management system (DBMS) that can be used as the product library. The steps in this section are for creating an ArcSDE geodatabase for Microsoft SQL Server Express licensed for ArcGIS Desktop (SQL Server Express geodatabase). If you want to create a geodatabase from Oracle, SQL Server, or another ArcSDE geodatabase licensed for ArcGIS Server Enterprise, see the following topics for information:

Recommendations for Oracle databases

It is recommended that you ensure that the following parameter values are used when creating an Oracle database:

Parameter name

Value

Configure with Database Enterprise Manager

Enabled

Shared memory management

AUTOMATIC

Character Sets

Unicode (AL32UTF8)

OPEN_CURSORS

2000–10000

SESSION_CACHED_CURSORS

50–150

Oracle parameters for product library

The steps below are for creating an ArcSDE geodatabase for Microsoft SQL Server Express licensed for ArcGIS Desktop (an instance of SQL Server Express).

Steps:
  1. Log in as a server administrator, start ArcMap, then open the Catalog window.
  2. In the Catalog tree, right-click the database server on which you want to create a new geodatabase.
  3. Click New Geodatabase.
  4. Type a name for the new geodatabase in the Geodatabase name text box.

    The name must begin with a letter, cannot contain spaces or special characters (such as #, @, or *), and have a maximum length of 31 characters when combined with your server name.

  5. If you want to change the database file location, specify the new location in the Geodatabase file text box by clicking the ellipsis button (...) and browsing to the location.
  6. Type the size of the new geodatabase in the Initial Size text box.
  7. Choose MB or GB from the Units drop-down menu, or use the default size of 100 MB.

    Regardless of the initial size, the geodatabase grows as it needs to, up to 4 GB.

    NoteNote:

    The initial size of the geodatabase cannot be smaller than that of the model database in the SQL Server Express instance. The model database is the system template for all new databases. The size of the model database determines the minimum size of any database created in that SQL Server Express instance. If you attempt to create a geodatabase smaller than this minimum size, database creation fails and the following error message is returned:

    Error creating this geodatabase
    CREATE DATABASE failed. 
    Primary file must be at least <size of model> to accommodate a copy 
    of the model database.

  8. Click OK.
  9. A progress bar displays while the database file and geodatabase schema are created. When complete, the new geodatabase appears on the Contents tab and in the Catalog tree.

Creating geodatabase users

You can choose to add users to a geodatabase stored in SQL Server through Microsoft SQL Server Management Studio Express.

Learn how to add users for an Oracle database

Learn how to add Windows-authenticated users or groups to a SQL Server database

Learn how to add database-authenticated users to a SQL Server database

The steps below are for creating users for the product library geodatabase in ArcCatalog on a database server (an instance of SQL Server Express) and SQL Server.

Steps:
  1. Log in as a server administrator, start ArcMap, then open the Catalog window.
  2. Right-click the database server to which you want to add a user or group.
  3. Click Permissions.
  4. Click Add user on the Permissions dialog box.
  5. Specify the location where you want to search for the user or group.

    This can be the local machine or a domain.

  6. Type the name of the user or group you want to add. You can click the Advanced button to do a more specific query to find the desired user.
  7. Click Check Names to verify the login name is valid.
  8. Click OK.

Granting geodatabase roles/permissions

A role needs to be assigned to the users that are going to be working with the product library so they can view or add components, information, and data to the product library. These permissions are at the geodatabase level, assigned separately from the product library permissions. The roles are assigned through ArcCatalog as permissions for users that are using a product library stored in SQL Server Express or SQL Server. For Oracle and any other ArcSDE geodatabase licensed for ArcGIS Server Enterprise, the role CKB_USERS must be created for the users to be recognized by the product library. This can be done by using the following statement:

CREATE ROLE CKB_USERS NOT IDENTIFIED

User names for the role are required for any users who are going to be working with the product library and need to read from or write to the product library tables and other components. The administrators are considered the owners of the data, so they already have this privilege.

Below are suggested user names and the permissions required for each level for Oracle (and SQL Server if using Microsoft SQL Server Management Studio Express).

For product library administrators, the following is suggested:

User type

Role

Oracle permissions

SQL Server permissions

Data owner

CONNECT

  • CREATE PROCEDURE
  • CREATE SEQUENCE
  • CREATE SESSION
  • CREATE TRIGGER
  • CREATE VIEW
  • CREATE TABLE

  • CREATE TABLE
  • CREATE VIEW
  • CREATE PROCEDURE

Administrator permissions

For product library editors, the following is suggested:

User type

Role

Oracle permissions

SQL Server permissions

Data editor/Data viewer

  • CONNECT
  • CKB_USERS

CREATE SESSION

CREATE TABLE

Editor permissions

Learn more about user permission levels for Oracle

Learn more about user permission levels for SQL Server

The steps below are for granting roles/permissions on a database server (an instance of SQL Server Express) and SQL Server.

Steps:
  1. Right-click the geodatabase for which you want to grant user permissions.
  2. Click Administration and click Permissions.
  3. Choose the desired user or group from the list on the Permissions dialog box.
  4. Click the appropriate role:
    • None—No specific access to the geodatabase or the datasets in the geodatabase has been granted.
    • Read Only—The user can only view and select data.
    • Read/Write—The user can read, write to, and create new datasets in a geodatabase or can read and write to an existing dataset.
    • Admin—The user can perform administrative tasks in a specific geodatabase.
    • Server administrator—This user manages the database server.
  5. Click Apply.

Configuring the database in ArcSDE

You need to configure the MAXBLOBSIZE and TCPKEEPALIVE parameters for the ArcSDE geodatabase used as the product library. The product library can be set up in a central or local geodatabase. A central geodatabase is usually an ArcSDE geodatabase with Oracle, SQL Server, SQL Server Express, or another enterprise DBMS installed. A local geodatabase is usually an ArcSDE geodatabase with SQL Server Express installed locally to house and manage the product library.

The DBMS used for the geodatabase should be configured before the product library is set up with the default geometry storage. See geodatabase storage in relational databases or geodatabase parameters for more information.

The MAXBLOBSIZE value is -1 by default. However, if you are using Oracle or another enterprise DBMS, make sure that this value is set to -1 and the TCPKEEPALIVE value is set to 1. This command should be used from the command prompt of a machine where ArcSDE is installed.

For example:

sdeconfig -o alter -v MAXBLOBSIZE=-1-i <service> -u sde -p <sde_password>

For more information, see the ArcSDE Administration Command Reference.

You can download a Portable Document Format (PDF) version of the book from the ESRI Support Center Web site (login required): ArcSDE Server documentation

NoteNote:

The ArcSDE documentation refers to the parameter name as Property Name in the command line examples.

Use the steps below if you are using SQL Server Express or SQL Server to configure the MAXBLOBSIZE and TCPKEEPALIVE parameters.

Steps:
  1. Open SQL Server Management Studio Express.
  2. Click Connect on the Connect to Server dialog box that appears.
  3. Expand Databases, the geodatabase you are using for the product library, and Tables.
  4. Right-click the SDE_server_config table and click Edit Top 200 rows.
  5. Find MAXBLOBSIZE in the prop_name field and change it to -1 in the num_prop_value field if it is another value.
  6. Find TCPKEEPALIVE in the prop_name field and change it from 0 to 1 in the num_prop_value field.
    CautionCaution:

    If you are using a local geodatabase and you modify the parameters while the Catalog window is open, you need to refresh (or disconnect and reconnect to) your SQL Server Express instance to confirm that the geodatabase has the new settings. You can right-click the database server and click Refresh.

  7. Close SQL Server Management Studio Express.

Defining and upgrading the geodatabase as a product library

After the geodatabase has been created, various tables and feature classes that are part of the product library need to be added to it. This process can be completed in ArcMap.

The steps in this section are for defining and upgrading the geodatabase as a product library in ArcMap.

Steps:
  1. Start ArcMap.
  2. On the main menu, click Customize > Production > Production Properties.

    The Production Properties dialog box appears.

  3. If necessary, click Data Management.
    Data Management pane on the Production Properties dialog box
  4. Click the cell next to Workspace in the Product Library section and click the ellipsis (...) that appears.

    The Please browse to the location of the Product Library Workspace dialog box appears.

  5. Navigate to the product library database.
  6. Click Open.

    The Upgrade Workspace dialog box appears.

  7. Click OK to upgrade the geodatabase you want to use as the product library.

    The Upgrade Product Library dialog box appears with the progress of the upgrade.

    Upgrade Product Library dialog box with progress information
  8. Click OK when the process completes.
  9. The Production Properties dialog box appears.
  10. Click OK.

Granting privileges to product library components

All the tables in the product library need to have read/write privileges assigned to them, except the PCAT_PERMISSION table. The PCAT_PERMISSION table only needs read privileges assigned to it.

The permissions need to be assigned to the CKB_USERS role.

Both the administrator and other user accounts in the underlying database management system should have appropriate privileges and roles assigned to them. When you set up your connection to your spatial database, ensure that you are connecting as the appropriate user.

Steps:
  1. Start ArcCatalog.
  2. Expand one of the following:
    • Database Servers if using a SQL Server Express geodatabase
    • Database Connections if using an Oracle, SQL Server, or other enterprise geodatabase
  3. Double-click the product library administrator connection geodatabase to connect to it.
  4. Select all tables except PCAT_PERMISSION, right-click, then click Privileges.
  5. Type CKB_USERS into the text box on the Privileges dialog box.
  6. Check the check boxes next to SELECT, UPDATE, INSERT, and DELETE.
  7. Click OK.
  8. Select the PCAT_PERMISSION table, right-click, then click Privileges.
  9. Type CKB_USERS into the text box on the Privileges dialog box.
  10. Check the check box next to SELECT.
  11. Click OK.

Versioning within product library

You need to register product library components for versioning to allow them to be editable.

You need to register the product library feature classes and tables for versioning.

Steps:
  1. Start ArcCatalog.
  2. Expand one of the following:
    • Database Servers if using a SQL Server Express geodatabase
    • Database Connections if using an Oracle, SQL Server, or other enterprise geodatabase
  3. Double-click the product library administrator connection geodatabase to connect to it.
  4. Right-click each feature class in your product library and click Register as Versioned.

    Do not check the Register the selected objects with the option to move edits to base check box.

  5. Click OK.
  6. Right-click each table in your product library and click Register as Versioned.

    Do not check the Register the selected objects with the option to move edits to base check box.

  7. Click OK.

Creating database connections for product library users

Database connections need to be created for the other product library users if the product library is stored in Oracle, SQL Server, or another ArcSDE geodatabase licensed through ArcGIS Server Enterprise. If your product library is stored in SQL Server Express, you can skip this section, since other users will only need to add a database server connection (first section of this workflow).

If you want to create a database connection for SQL Server, go to Making a direct connection from ArcGIS Desktop to a geodatabase in SQL Server. If you want to create a database connection for Oracle, go to Making a direct connection from ArcGIS Desktop to a geodatabase in Oracle.

NoteNote:

For step 6, if using database authentication, type the user name of the product library user for which you want to create a database connection.

Once you have performed all the steps in this workflow, the product library workspace is ready for you to create the solution, product class, series, and users and user permissions. Other users still need to define the product library workspace on their client machine to be able to create and manage data and/or products.


6/14/2012