Skip To Content

Amazon Web Services 中的 SQL Server 企业级地理数据库

如果使用 ArcGIS (Windows) Amazon 机器映像 (AMI) 来创建 GIS Server 站点,则可以选择包含以下一种 Microsoft SQL Server 实例:

  • SQL Server Standard
  • Amazon Relational Database Service (RDS) for SQL Server
  • SQL Server Express

使用 ArcGIS Server Cloud Builder on Amazon Web Services 或由 Esri 提供的 ArcGIS GIS Server CloudFormation 模板创建实例时,SQL Server 实例将包含两个预先创建的地理数据库:egdb 和 geodata。

egdb 地理数据库将注册为 GIS Server 站点的托管数据库。向具有已注册的托管数据库的站点发布要素或 WFS-T 服务时,可将数据从包含地图源数据的地理数据库复制到 egdb 地理数据库。此数据依赖于服务;当删除要素或 WFS-T 服务时,数据也从地理数据库 egdb 中删除。

数据库 geodata 旨在用作复制的地理数据库。您可以将 geodata 地理数据库注册到 GIS Server 站点。注册时,将地理数据库 geodata 指定为与发布者数据库连接(发布者数据库为您的专属企业级地理数据库)不同的服务器数据库连接,并创建地理数据服务。您可以通过地理数据服务将数据从专属企业级地理数据库复制到地理数据库 geodata。

当发布包含复制数据的要素或 WFS-T 服务时,通过要素服务对数据进行的编辑可与地理数据服务同步,从而更新您的本地企业级地理数据库中的数据。同样,您可以继续编辑专属数据,并使用地理数据服务将这些更改与 geodata 地理数据库中的数据进行同步。

SQL Server Standard

如果选择 SQL Server Standard,则可以选择在 GIS Server 站点所在的实例上创建 DBMS,或选择在独立于 GIS Server 站点的实例上创建 DBMS。

SQL Server Standard 实例已设置为使用混合模式验证。这两个实例自带以下两个操作系统登录帐户:

  • 管理员:此登录帐户为 ArcGIS Enterprise on Amazon Web Services 实例管理员和 SQL Server 实例管理员。
  • ArcGIS:此登录帐户是 SQL Server 实例管理员,也是运行 ArcGIS 服务时使用的登录帐户。此登录帐户必须有权访问发布服务时所需的数据。

两个登录帐户均为 SQL Server sysadmin 固定服务器角色的成员;因此,通过 ArcGIS Server Cloud Builder on Amazon Web Services 创建的 egdb 和 geodata 地理数据库都存储在 dbo 方案中,并且以其中任何一个用户角色登录时所加载的数据都存储在各个地理数据库的 dbo 方案中。作为 dbo,这些用户对加载到地理数据库中的所有数据以及 SQL Server 实例本身具有完整权限。

这些登录帐户的密码由系统设置。您可以更改管理员登录帐户的密码。有关说明,请参阅更改默认 Windows 管理员密码

如果使用 Amazon Web Services 控制台手动创建站点,则必须创建您自己的地理数据库。可以使用创建企业级地理数据库地理处理工具或 Python 脚本来执行此操作。创建地理数据库之后,必须在数据库中针对 ArcGIS 登录创建 ArcGIS 用户,这样便可发布服务。您还必须将地理数据库注册到 GIS Server 站点。

Amazon RDS for SQL Server

Amazon Relational Database Service (RDS) 将执行某些数据库维护任务,这样您便无需执行这些任务。例如,RDS 实例将自动应用数据库修补程序并创建数据库备份。这些实例被设计为高度可用,可以在多个可用性区域中运行(请参阅 multi-AZ 部署)。

Multi-AZ 部署为 Amazon RDS 实例的默认部署;因此,您使用 ArcGIS Amazon Web Services AMI 启动的 Amazon RDS for SQL Server 实例也将使用这种部署类型。

注:

因为这种类型提供了增强的可用性,对于生产系统,Amazon 建议使用 multi-AZ 部署。尽管如此,但请注意这类部署每小时消耗的成本较多,且相较于其他存储需要的存储空间更大。有关详细信息,请参阅 Amazon 价格指南

在 AWS 上的 GIS Server 站点中使用 Amazon RDS for SQL Server 实例时,Amazon RDS for SQL Server 实例将始终独立于您的 GIS Server 站点实例。

SQL Server RDS 实例不支持操作系统身份验证登录。使用 Esri 提供的 ArcGIS Server Cloud Builder on Amazon Web Services ArcGIS GIS Server CloudFormation 模板创建站点时,将创建两个 SQL Server 登录帐户和数据库用户。

  • EsriRDSAdmin:EsriRDSAdmin 用户是 RDS 的主用户,可创建数据库和 sde 用户。EsriRDSAdmin 还拥有发布要素服务时复制到 EGDBHOST 的数据。ArcGIS Server Cloud Builder on Amazon Web Services 为此帐户设置的密码与为 ArcGIS Server 站点管理员提供的密码相同。
  • Sde:Sde 用户拥有地理数据库系统对象。ArcGIS Server Cloud Builder on Amazon Web Services 为此帐户设置的密码与为 ArcGIS Server 站点管理员提供的密码相同。

默认情况下,通过 Cloud Builder 或 Esri CloudFormation 模板创建的 SQL Server RDS 实例不会启用镜像。如果需要此功能,则必须手动将其启用。

如果您使用 Amazon Web Services 控制台手动创建站点,且希望将 SQL Server RDS 用于数据存储,则需要通过以下操作设置地理数据库:

  • 使用 SQL Server Management Studio 或 TSQL 创建数据库。
  • 使用 SQL Server Management Studio 或 TSQL 创建 sde 登录账户、数据库用户和方案。
  • 使用 SQL Server Management Studio 或 TSQL 来授予 sde 用户创建地理数据库的足够权限
  • 运行启用企业级地理数据库地理处理工具或 Python 脚本创建地理数据库。
    注:

    不能使用创建企业级地理数据库地理处理工具或脚本在 SQL Server RDS 中创建 sde 用户和地理数据库。

  • 创建登录帐户、数据库用户和匹配方案以加载数据,并授予用户创建数据的权限。可使用创建数据库用户地理处理工具或 Python 脚本来执行此操作,或者可使用 Management Studio 或 TSQL 来执行此操作。
  • 将您的地理数据库注册到 GIS Server 站点。

SQL Server Express

SQL Server Express 实例始终与 GIS Server 站点创建在同一实例上。

SQL Server Express 实例独占使用经 Windows 验证的登录帐户。这两个实例自带以下两个操作系统登录帐户:

  • 管理员:此登录帐户为 ArcGIS Enterprise on Amazon Web Services 实例管理员和 SQL Server Express 实例管理员。
  • ArcGIS:此登录帐户是 SQL Server Express 实例管理员,也是运行 ArcGIS 服务时使用的登录帐户。此登录帐户必须有权访问发布服务时所需的数据。

两个登录帐户均为 SQL Server sysadmin 固定服务器角色的成员;因此,egdb 和 geodata 地理数据库都存储在 dbo 方案中,并且以其中任何一个用户角色登录时所加载的数据都存储在各个地理数据库的 dbo 方案中。作为 dbo,这些用户对加载到地理数据库中的所有数据以及 SQL Server 实例本身具有完整权限。

这些登录帐户的密码由系统设置。您可以更改管理员登录帐户的密码。有关说明,请参阅更改默认 Windows 管理员密码