可以从 ArcGIS 客户端连接至 Microsoft SQL Server。为此,在 ArcGIS 客户端计算机上安装所支持的 Microsoft SQL Server Native client 或 ODBC 驱动程序,然后从 ArcGIS 客户端连接至该数据库。
配置好客户端后创建连接文件。要在发布到 ArcGIS Server 的服务中使用 SQL Server 中存储的数据,请将数据库或地理数据库注册到站点。
从 ArcGIS Server 连接
配置实例以允许连接
默认情况下,未将 SQL Server 实例配置为允许从其他计算机中连接。如果您有新安装的 SQL Server,请确保该 SQL Server 服务正在运行并在监听正确的端口。有关详细信息,请参阅 Microsoft SQL Server 文档。
安装 SQL Server 客户端
如果已在不同计算机上安装 ArcGIS Server 和 SQL Server,则您必须在 ArcGIS Server 站点中每台计算机上安装 64 位 SQL Server 客户端或 ODBC 驱动程序。
如果连接至 SQL Server 2012,则使用 SQL Server Native client。如果连接至 Microsoft Azure SQL Database 或 SQL Server 2014 或更高版本,则使用 Microsoft ODBC driver for SQL Server。可从 Microsoft 下载中心或 My Esri 中获得并安装。
注册数据库
如果希望发布到 ArcGIS Server 的服务使用 SQL Server 中数据库或地理数据库的数据,则必须将数据库注册到 ArcGIS Server 站点。 对于 SQL Server 中的地理数据库,您具有两个注册选项。有关注册选项和含注册数据库说明的主题链接的信息,请参阅关于将您的数据注册到 ArcGIS Server。
从 ArcMap 连接
要从 ArcMap, 连接至 SQL Server 中的数据库或地理数据库,请在 ArcMap 计算机上安装 SQL Server 客户端或 ODBC 驱动程序,然后在目录树中创建连接文件。然而,首先要确保 SQL Server 实例可接受来自远程计算机的连接。
配置实例以允许连接
默认情况下,未将 SQL Server 实例配置为允许从其他计算机中连接。如果您有新安装的 SQL Server,请确保该 SQL Server 服务正在运行并在监听正确的端口。有关详细信息,请参阅 Microsoft SQL Server 文档。
安装 SQL Server 客户端
如果连接至 SQL Server 2012,则使用 SQL Server Native client。如果连接至 Microsoft Azure SQL Database 或 SQL Server 2014 或更高版本,则使用 Microsoft ODBC driver for SQL Server。可从 Microsoft 下载中心或 My Esri 中获得并安装。在所有已安装 ArcMap 的计算机上安装此客户端。
如果要在 64 位的操作系统上安装此客户端,可运行 64 位可执行文件;将同时安装 32 位和 64 位文件。如果在 64 位操作系统上运行 32 位 SQL Server 客户端,则无法正常运行。
连接到数据库
您可以通过在 ArcMap 或 ArcCatalog 中目录树的数据库连接节点下添加数据库连接,或使用创建数据库连接工具连接到 SQL Server 中的数据库或地理数据库。
使用数据库连接对话框的步骤如下所述。
- 在 ArcMap 或 ArcCatalog 的目录树中,展开数据库连接,然后双击添加数据库连接。
- 从数据库平台下拉列表中选择 SQL Server。
- 在实例文本框中,输入 SQL Server 实例名称。
例如,如果使用默认的 SQL Server 实例,则可在实例文本框中指定实例名称或服务器的 IP 地址。如果指定 IPV6 地址,则要用括号将地址括起来。例如,如果服务器的 IPV6 地址是 2000:ab1:0:2:f333:c432:55f6:d7ee,请在实例文本框中输入 [2000:ab1:0:2:f333:c432:55f6:d7ee]。
如果数据库监听的不是默认端口 (1433),请将端口号包括在实例内。例如,如果 SQL Server 实例为 basset\spatial,且监听端口 61000,请在实例文本框中输入 basset\spatial,61000。
如果 SQL Database 实例名称为 cloudy4u.database.windows.net,请在实例文本框中输入 cloudy4u.database.windows.net。如果使用名为 terra\gis 的 SQL Server 实例,请在实例文本框中输入 terra\gis。
- 选择连接到数据库时使用的身份验证类型:数据库身份验证或操作系统身份验证。
- 如果选择操作系统身份验证,则不需要输入用户名和密码,系统会通过用于登录到操作系统的用户名和密码建立连接。如果操作系统使用的登录信息不能用作数据库的登录信息,连接将失败。
如果选择数据库身份验证,则必须分别在用户名和密码文本框中提供有效的数据库用户名和密码。用户名最长为 30 个字符。
如果不希望将登录信息保存为连接的一部分,请取消选中保存用户名和密码;这样做有助于维护数据库的安全性。但是,如果执行此操作,则系统会在每次连接时提示您提供用户名和密码。另请注意,对于为 ArcGIS 服务提供数据库或地理数据库访问的连接文件,或想要通过此连接文件使用目录搜索来定位访问的数据,都必须选中保存用户名和密码。
- 在数据库文本框中,输入或选择想要在 SQL Server 或 SQL 数据库实例中连接的特定数据库的名称。数据库名称最多包含 31 个字符。
在以下示例中,使用数据库身份验证连接到 SQL Server 实例服务器 spatialdata 中的数据库 server1\ss08r2。
- 单击确定进行连接。
文件的创建位置为 \\<computer_name>\Users\<user_name>\AppData\Roaming\ESRI\Desktop<release#>\ArcCatalog。如遇到任何连接问题,请检查 %TEMP% 目录中的 sdedc_SQL_Server.log 文件以获得更多的错误消息。
可以将连接移动到另一位置;只需确保需要建立连接的用户和应用程序有权读取放置连接文件的目录。
如果需要将此连接文件中的数据用作服务(如地理处理和地理编码服务)源,则可能需要将连接文件置于网络上的某个共享位置。有关共享连接文件的详细信息,请参阅使数据可供 ArcGIS Server 访问。
(仅地理数据库)连接到特定地理数据库版本
使用数据库连接对话框首次连接到 SQL Server 中的地理数据库时,将连接至默认版本。如果使用地理数据库版本化,并想要连接到其他事务版本或历史版本,请使用地理数据库连接属性对话框更改版本。有关详细信息,请参阅连接到特定地理数据库版本。
从 ArcGIS Pro 连接
要从 ArcGIS Pro 工程连接至 SQL Server,请在 ArcGIS Pro 计算机上安装 SQL Server 客户端或 ODBC 驱动程序并创建数据库连接。然而,首先要确保 SQL Server 实例可接受来自远程计算机的连接。
配置实例以允许连接
默认情况下,未将 SQL Server 实例配置为允许从其他计算机中连接。如果您有新安装的 SQL Server,请确保该 SQL Server 服务正在运行并在监听正确的端口。有关详细信息,请参阅 Microsoft SQL Server 文档。
安装 SQL Server 客户端
如果连接至 SQL Server 2012,则使用 SQL Server Native client。如果连接至 Microsoft Azure SQL Database 或 SQL Server 2014 或更高版本,则使用 Microsoft ODBC driver for SQL Server。可从 Microsoft 下载中心或 My Esri 中获得并安装。在所有已安装 ArcGIS Pro 的计算机上安装此客户端。
连接到数据库
使用数据库连接对话框或创建数据库连接工具来添加数据库连接。使用数据库连接对话框的步骤如下所述。
- 右键单击目录窗格中的数据库,然后单击新建数据库连接。
- 从数据库平台下拉列表中选择 SQL Server。
- 在数据源文本框中输入 SQL Server 实例名称。
例如,如果使用默认的 SQL Server 实例,则可在数据源文本框中指定实例名称或服务器的 IP 地址。如果指定 IPV6 地址,则要用括号将地址括起来。例如,如果服务器的 IPV6 地址是 2000:ab1:0:2:f333:c432:55f6:d7ee,请在数据源文本框中输入 [2000:ab1:0:2:f333:c432:55f6:d7ee]。
如果数据库监听的不是默认端口 (1433),请将端口号包括在实例内。例如,如果 SQL Server 实例为 basset\spatial,且监听端口 61000,请在数据源文本框中输入 basset\spatial,61000。
如果 SQL Database 实例名称为 cloudy4u.database.windows.net,请在数据源文本框中输入 cloudy4u.database.windows.net。如果使用名为 terra\gis 的 SQL Server 实例,请在实例文本框中输入 terra\gis。
- 选择连接到数据库时使用的身份验证类型:数据库身份验证或操作系统身份验证。
- 如果选择操作系统身份验证,则不需要输入用户名和密码,系统会通过用于登录到操作系统的用户名和密码建立连接。如果操作系统使用的登录信息不能用作数据库的登录信息,连接将失败。
如果选择数据库身份验证,则必须分别在用户名和密码文本框中提供有效的数据库用户名和密码。用户名最长为 30 个字符。
如果不希望将登录信息保存为连接的一部分,请取消选中保存用户名和密码;这样做有助于维护数据库的安全性。但是,如果执行此操作,则系统会在每次连接时提示您提供用户名和密码。另请注意,对于为 ArcGIS 服务提供数据库或地理数据库访问的连接文件,或想要通过此连接文件使用目录搜索来定位访问的数据,都必须选中保存用户名和密码。
- 在数据库文本框中,输入或选择想要在 SQL Server 或 SQL 数据库实例中连接的特定数据库的名称。数据库名称最多包含 31 个字符。
- 单击确定进行连接。