一个 SQL Server 实例中的多个地理数据库 (geodatabase)

如果想要在同一个 SQL Server 实例中创建多个地理数据库,请创建多个 SQL Server 数据库,在每个数据库中创建一个地理数据库,对每个地理数据库进行授权,然后为每个地理数据库创建单独的 ArcSDE 服务(如果要使用 ArcSDE 服务连接到地理数据库)。

下图显示的是在一个 SQL Server 实例上有两个单独的数据库(数据库 1 和数据库 2),每个数据库包含一个完整的地理数据库。

在一个 SQL Server 实例中,有两个使用单一空间数据库模型的地理数据库

数据库可以使用任何唯一的名称,但必须遵守 SQL Server 标识符规则,并且不能以数字开头,也不得为 sde。

可以使用 ArcSDE for SQL Server 的“安装后”向导来创建附加数据库和地理数据库。请执行“安装后”向导中的所有步骤,同时确保提供唯一的数据库名称、ArcSDE 服务名称和 ArcSDE 服务编号。由于用户是在实例级创建后添加到 SQL Server 的数据库中的,因而请确保在出现提示时使用与 ArcSDE 管理员相同的密码。

如果客户端仅使用与每个单独地理数据库的直接连接,则无需创建 ArcSDE 服务,而可跳过“安装后”向导的最后一步。但是,如果客户端使用 ArcSDE 服务进行连接,则必须为每个附加地理数据库创建一个附加服务。如上所述,这可通过“安装后”向导来实现;只是要确保在 ArcSDE 服务信息 对话框中指定不同的服务名称、端口号和正确的数据库名称。

请注意,如果打算在 dbtune.sde、giomgr.defs 或 dbinit.sde 文件中使用不同的设置,必须在运行“安装后”向导之前进行这些更改。

每次只能与一个地理数据库建立客户端连接。连接到 SQL Server 实例上的单一空间数据库地理数据库时,不能通过同一个连接来查询 SQL Server 实例上另一个地理数据库中的信息。

例如,在 ArcCatalog 中,可以创建与数据库 1 的空间数据库连接。通过此连接向 ArcMap 添加数据时,无法查看数据库 2 中的数据。要访问数据库 2 中的数据,应在 ArcCatalog 中建立第二个空间数据库连接,此时,在“数据库”字段中指定“数据库 2”,并在“服务”字段中指定数据库 2 的端口号。

有关在 ArcCatalog 中建立空间数据库连接的信息,请参阅建立从 ArcGIS Desktop 到 SQL Server 中地理数据库 (geodatabase) 的 ArcSDE 服务连接。有关建立直接连接的信息,请参阅建立从 ArcGIS Desktop 到 SQL Server 中地理数据库 (geodatabase) 的直接连接

遗留问题遗留问题:

在 ArcSDE 9 及更高版本中,SQL Server 支持两种不同的数据存储模型:多重空间数据库模型和单一空间数据库模型。在 ArcSDE 9 之前的版本中,只能使用多重空间数据库模型。虽然仍支持多重空间数据库模型,但该模型已被废弃。如果想了解有关此类地理数据库的论述,请参阅 SQL Server 多重空间数据库模型


3/7/2012