English

FAQ: Does ArcGIS support SQL Server partially contained databases?

Question

Does ArcGIS support SQL Server partially contained databases?

Answer

Yes. Partially contained databases are a new feature available in SQL Server 2012 and later releases. These databases are isolated from other databases and from the SQL Server instance. The ArcGIS platform supports connections to databases configured with partial containment, and allows enterprise geodatabase functionality within this database configuration.

Connecting to a Partially Contained Database

When connecting to a partially contained database using the Database Connection dialog box in ArcGIS for Desktop, manually type the database name into the Database text box.  A contained database user does not have an associated SQL Server login, and is unable to retrieve the list of databases from the SQL Server instance if the drop-down list is clicked.

Partial containment implies that some server dependencies still exist. For instance, traditional database users that are mapped to SQL Server logins can coexist with new contained database users in the same database. During the login process, SQL Server must decide the type of authentication used for each connection.

Connecting with SQL Server Authentication first attempts database-level authentication if a partially contained database is specified in the connection string. If a matching contained user is not found, then authentication falls back to the server level and looks for a matching login. If a database is NOT specified in the connection string, then server-level authentication is attempted first.

Creating Contained Database Users

Creating contained database users must be accomplished using database management tools. This type of user is not mapped to a SQL Server login and the password hash is stored within the user database. The Create Database User tool always creates database users with associated SQL Server logins.

Creating a geodatabase in a contained database

To create an enterprise geodatabase in a contained database, the database must be created using DBMS tools.  To partially contain a database, the Containment Type must be set to Partial. Once a partially contained database has been created, run the Enable Enterprise Geodatabase geoprocessing tool to create the geodatabase system tables, stored procedures, views and functions in the new database.  The Create Enterprise Geodatabase geoprocessing tool cannot create a partially contained database. Running this tool results in a database with the Containment Type set to None.

Note:
See the Microsoft SQL Server documentation for more information about creating partially contained databases, and creating contained database users.
 

Related Information

Microsoft SQL Server - Contained Databases
Microsoft SQL Server - Migrate to a Partially Contained Database