从 ArcGIS 连接到 Teradata

要从 ArcGIS 客户端连接到 Teradata,请在 ArcGIS 客户端计算机上安装以下内容:

  • Teradata ICU 库
  • Teradata GSS 客户端包
  • Teradata ODBC 驱动程序

注:

在安装 Teradata ODBC 驱动程序之前必须先安装 Teradata ICU 库和 GSS 客户端。 运行 setup.exe 文件以在 Microsoft Windows 计算机上安装 Teradata 客户端时,将按要求的顺序安装文件。

可从 Teradata 网站下载 Teradata ODBC 驱动程序。 可下载文件包括 Teradata GSS 客户端和 ICU 库。

安装了 Teradata 客户端文件之后,请在每台计算机上配置 ODBC 数据源名称。 连接到相同 Teradata Vantage 的每个 ArcGIS 客户端都必须使用相同的数据源名称。

之后创建连接文件。 如需发布引用 Teradata 数据库中数据的 ArcGIS Server web 服务,请将数据库连接文件注册到您的 ArcGIS Server 站点。

ArcGIS Pro 进行连接

要从 ArcGIS Pro 工程连接到 Teradata,请在 ArcGIS Pro 计算机上以此顺序安装 Teradata ICU 库、GSS 客户端和 ODBC 驱动程序,然后创建数据库连接。

安装 Teradata 文件并配置 ODBC 驱动程序

  1. Teradata 网站中下载适用于 Windows 的 64 位 Teradata 客户端文件。
  2. 在每台 ArcGIS Pro 计算机上安装 Teradata ICU 库和 GSS 客户端。
  3. 在每台 ArcGIS Pro 计算机上安装 Teradata ODBC 驱动程序。
  4. Teradata ODBC 驱动程序选项对话框中更改以下设置,以此配置 ODBC 驱动程序:
    1. 将会话模式设置为 Teradata
    2. 选择使用本地大对象支持选项。
    3. 选择将输出参数返回为 ResultSet 选项。
  5. 可以选择配置在连接到数据库时使用的 ODBC 数据源名称。

    如果要配置 ODBC 数据源名称,则针对为同一数据库配置的所有 Teradata ODBC 客户端使用相同名称。 例如,为所有 ArcGIS Pro 计算机上的 Teradata ODBC 驱动程序使用与 ArcGIS Server 站点中的计算机相同的数据源名称。 如果没有进行此操作,则无法正常将数据库注册到 ArcGIS Server,因为其会比较待发布数据的连接字符串与您所注册数据库的连接字符串。

  6. PATH 环境变量设置为 Teradata ODBC 驱动程序的安装目录。

连接到数据库

使用数据库连接对话框或创建数据库连接地理处理工具来添加数据库连接。

以下步骤描述了如何在 ArcGIS Pro 中使用数据库连接对话框:

  1. 打开 ArcGIS Pro 中的目录窗格。
  2. 右键单击数据库,然后单击新建数据库连接
  3. 数据库平台下拉列表中选择 Teradata
  4. 数据源文本框中,键入为 ODBC 驱动程序所配置的数据源名称。 如果尚未配置 ODBC 数据源名称,则输入 Teradata 服务器的 IP 地址。 语法如下:

    dbcName=<IP 地址>

    例如,如果服务器的 IPV4 地址为 200.30.200.10,则键入 dbcName=200.30.200.10。 如果服务器具有 IPV6 地址,则要用括号将地址括起来。 例如,如果服务器的 IPV6 地址为 3020:12z3:y4xw:5099:0:v678:u111:ts22,则键入 dbcName=[3020:12z3:y4xw:5099:0:v678:u111:ts22]

  5. 身份验证类型中选择数据库身份验证

    不支持操作系统身份验证。

  6. 用户名密码文本框中分别输入有效的数据库用户名和密码。
  7. 如果不希望将登录信息保存为连接的一部分,请取消选中保存用户名和密码;这样做有助于维护数据库的安全性。 但是,如果执行此操作,则系统会在每次从 ArcGIS Pro 连接时提示您提供用户名和密码。

    注:

    对于您注册到 ArcGIS Server 站点的连接文件,或如果您希望通过搜索来找到通过此连接文件访问的数据,都必须选中保存用户名和密码

  8. 单击确定创建连接文件。

数据库连接将显示在目录窗格中的数据库下,同时将在 ArcGIS Pro 工程目录中创建连接文件 (.sde)。

可通过在目录窗格中输入新名称并按 Enter 键对文件进行重命名。

ArcGIS Server 进行连接

可以发布引用您 Teradata 数据库中数据的服务。 这需要您进行以下操作:

安装 Teradata 文件并配置 ODBC 驱动程序

  1. Teradata 网站中下载 64 位 Teradata 客户端文件。
  2. ArcGIS Server 站点中每个计算机上安装 Teradata ICU 库和 GSS 客户端。
  3. ArcGIS Server 站点中每个计算机上安装 Teradata ODBC 驱动器。
    注:

    Teradata ODBC 驱动程序只与随 Teradata ODBC 驱动程序包提供的 Progress DataDirect ODBC 驱动程序管理器特定版本一起使用。

  4. 配置 ODBC 驱动程序。
    • Windows 操作系统中,在 Teradata ODBC 驱动程序选项对话框中更改以下设置:
      • 将会话模式设置为 Teradata
      • 选择使用本地大对象支持选项。
    • Linux 操作系统中,在 odbc.ini 文件中设置以下参数:
      • SessionMode=Teradata
      • UseNativeLOBSupport=Yes
  5. Linux 系统中,如果从 ArcGIS Server 站点建立连接,则执行以下操作:
    1. 确保已在 ArcGIS Server 站点中的每台计算机上安装了 Linux ODBC 驱动程序管理器。
    2. Teradata ODBC 连接文件放置在站点中每台计算机 ArcGIS Server 帐户的 $HOME 目录中。 文件必须命名为 .odbc.ini.odbcinst.ini
    注:

    Teradata ODBC 驱动程序只与随 Teradata ODBC 驱动程序包提供的 Progress DataDirect ODBC 驱动程序管理器特定版本一起使用。

  6. 可以选择配置在连接到数据库时使用的 ODBC 数据源名称。

    如果为数据库设置 ODBC 数据源名称,则在为相同数据库配置所有 Teradata ODBC 客户端时使用该名称。 例如,所有 ArcGIS Pro 计算机和您 ArcGIS Server 站点中的计算机上的 Teradata ODBC 驱动程序所使用的数据源名称必须相同。 如果没有进行此操作,则无法正常将数据库注册到 ArcGIS Server 站点,因为其会比较要发布数据的连接字符串与注册的数据库的连接字符串。

  7. Windows 系统中,如果从 ArcGIS Server 站点建立连接,则将 PATH 环境变量设置为 Teradata ODBC 驱动程序的安装目录。 为站点中的每台计算机执行此操作。

更改 init_user_param.sh 脚本(仅针对 Linux

在安装数据库客户端文件后,更改与 ArcGIS Server 一同安装的 init_user_param.sh 脚本以引用客户端文件。 可通过浏览至 <ArcGIS Server installation directory>/arcgis/server/usr 目录访问该脚本。

您必须更新 ArcGIS Server 站点中每台计算机上的 init_user_param.sh

  1. 请确保 ArcGIS Server 每台计算机的安装程序所有者至少具有在数据库客户端库中读取和执行的权限。
  2. 在文本编辑器中打开 init_user_param.sh 脚本。
  3. 移除以 export 开头的行中的注释标记 (#)。

    # -----------------------------------------------------------------------
    # Modify this section to configure a connection to Teradata.
    #
    # To make a connection, name the Teradata ODBC configuration files as  
    # .odbcinst.ini and .odbc.ini and store them in the ArcGIS Server user $HOME directory. 
    #
    # -------------------------------------------------------------------------------------
    export LIB_ODBC_DRIVER_MANAGER=<Teradata_InstallDir>/<version>/14.00/odbc_64/lib/libodbc.so
    export TDDIR=<Teradata_InstallDir>/client/<version>/odbc_64
    export LD_LIBRARY_PATH=$TDDIR/lib:$LD_LIBRARY_PATH
    export ODBCINI=<Location_to_.odbc.ini>/.odbc.ini

  4. 修改值以匹配 ODBC 驱动程序安装信息。
  5. 保存并关闭脚本。
  6. 要使在 init_user_param.sh 文件中进行的更改生效,必须重新启动 ArcGIS Server

    为此,先后在 ArcGIS Server 站点的每台计算机上运行 stopserver.sh 脚本和 startserver.sh 脚本。

    ./stopserver.sh

    ./startserver.sh

创建数据库连接文件

使用 ArcGIS Pro 中的数据库连接对话框创建数据库连接文件,如上所述

或者,您可以在 ArcGIS Pro 中运行创建数据库连接工具或通过 ArcGIS Server 计算机使用 Python 运行创建数据库连接命令,以创建可连接到数据库的数据库连接文件 (.sde)。

要将连接文件与 ArcGIS Server 配合使用,必须将用户信息与连接文件一起保存。

注册数据库

要允许地图服务使用 Teradata 数据库中的数据,而不是使用发布时创建的数据副本,请将 Teradata 注册到 ArcGIS Server 站点。

您可以使用创建的地理数据库连接文件从 ArcGIS Pro 中的管理注册的数据存储窗格ArcGIS Server Manager 将数据库注册到 ArcGIS Server