在 Linux 上安装和配置 Amazon Redshift ODBC 驱动程序 - Amazon Redshift
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

在 Linux 上安装和配置 Amazon Redshift ODBC 驱动程序

系统要求

您必须在可访问 Amazon Redshift 数据仓库的客户端计算机上安装 Amazon Redshift ODBC 驱动程序。对于您要在其上安装该驱动程序的每台计算机,有以下最低要求:

  • 计算机上的根访问权限。

  • 以下分发之一:

    • Red Hat® Enterprise Linux®(RHEL)8 或更高版本

    • CentOS 8 或更高版本。

  • 150MB 可用磁盘空间。

  • unixODBC 2.2.14 或更高版本。

  • glibc 2.26 或更高版本。

安装 Amazon Redshift ODBC 驱动程序

要下载并安装适用于 Linux 的 Amazon Redshift ODBC 驱动程序版本 2.x,请执行以下操作:

  1. 下载以下驱动程序:64 位 RPM 驱动程序版本 2.1.2.0 在中国(北京)区域,请使用以下链接:64 位 ODBC 驱动程序版本 2.1.2.0

    注意

    32 位 ODBC 驱动程序已停用。除了紧急安全补丁外,不会发布进一步的更新。

  2. 转至您下载程序包的位置,然后运行以下命令之一。使用适用于您的 Linux 发行版的命令。

    在 RHEL 和 CentOS 操作系统上,运行以下命令:

    yum --nogpgcheck localinstall RPMFileName

    RPMFileName 替换为 RPM 包文件名。例如,以下命令将演示如何安装 64 位驱动程序:

    yum --nogpgcheck localinstall AmazonRedshiftODBC-64-bit-2.x.xx.xxxx.x86_64.rpm

使用 ODBC 驱动程序管理器在 Linux 上配置 ODBC 驱动程序

在 Linux 上,您可以使用 ODBC 驱动程序管理器来配置 ODBC 连接设置。ODBC 驱动程序管理器使用配置文件来定义和配置 ODBC 数据来源和驱动程序。您可以使用的 ODBC 驱动程序管理器取决于您使用的操作系统。

使用 unixODBC 驱动程序管理器配置 ODBC 驱动程序

要配置 Amazon Redshift ODBC 驱动程序,需要以下文件:

  • amazon.redshiftodbc.ini

  • odbc.ini

  • odbcinst.ini

如果您将驱动程序安装在默认位置,则 amazon.redshiftodbc.ini 配置文件将位于 /opt/amazon/redshiftodbcx64 中。

此外,在 /opt/amazon/redshiftodbcx64 下,您可以找到示例 odbc.iniodbcinst.ini 文件。您可以使用这些文件作为配置 Amazon Redshift ODBC 驱动程序和数据来源名称 (DSN) 的示例。

我们不建议使用 Amazon Redshift ODBC 驱动程序安装目录来存储配置文件。安装目录中的示例文件仅用作示例。如果您日后重新安装 Amazon Redshift ODBC 驱动程序,或将其升级到新版本,安装目录会被覆盖。您将丢失对安装目录中的文件所做的所有更改。

为了避免出现这种情况,请将 amazon.redshiftodbc.ini 文件复制到安装目录以外的其他目录中。如果您要将此文件复制到用户的主目录,请在文件名的开头添加一个句点 (.),使其成为隐藏文件。

对于 odbc.iniodbcinst.ini 文件,应在用户的主目录中使用配置文件,或者在其他目录中创建新版本。默认情况下,您的 Linux 操作系统应在用户的主目录(/home/$USER~/.)中包含 odbc.ini 文件和 odbcinst.ini 文件。这些默认文件均为隐藏文件(通过在每个文件名的前面添加圆点 (.) 表示)。这些文件仅当您使用 -a 标志列出目录内容时显示。

对于 odbc.iniodbcinst.ini 文件,不管您选择哪个选项,都需对这些文件进行修改,以添加驱动程序和 DSN 配置信息。如果您创建新文件,则还需设置环境变量,以指定这些配置文件的目标存储位置。

默认情况下,ODBC 驱动程序管理器将配置为使用位于主目录中的 odbc.iniodbcinst.ini 配置文件的隐藏版本(名为 .odbc.ini.odbcinst.ini)。它们也被配置为使用驱动程序安装目录中的 amazon.redshiftodbc.ini 文件。如果您将这些配置文件存储在其他位置,请设置如下所述的环境变量,以便驱动程序管理器能够找到这些文件。

如果您使用的是 unixODBC,请执行以下操作:

  • ODBCINI 设置到 odbc.ini 文件的完整路径和文件名。

  • ODBCSYSINI 设置到包含 odbcinst.ini 文件的目录的完整路径。

  • AMAZONREDSHIFTODBCINI 设置到 amazon.redshiftodbc.ini 文件的完整路径和文件名。

以下是设置上述值的示例:

export ODBCINI=/usr/local/odbc/odbc.ini export ODBCSYSINI=/usr/local/odbc export AMAZONREDSHIFTODBCINI=/etc/amazon.redshiftodbc.ini

在 Linux 上使用数据来源名称 (DSN) 配置连接

在使用数据来源名称 (DSN) 连接到数据存储时,请配置 odbc.ini 文件以定义数据来源名称 (DSN)。在 odbc.ini 文件中设置属性以创建指定数据存储的连接信息的 DSN。

在 Linux 操作系统上,使用以下格式:

[ODBC Data Sources] driver_name=dsn_name [dsn_name] Driver=path/driver_file Host=cluster_endpoint Port=port_number Database=database_name locale=locale

以下示例显示了在 Linux 操作系统上使用 64 位 ODBC 驱动程序配置 odbc.ini

[ODBC Data Sources] Amazon_Redshift_x64=Amazon Redshift ODBC Driver (x64) [Amazon_Redshift_x64] Driver=/opt/amazon/redshiftodbcx64/librsodbc64.so Host=examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com Port=5932Database=dev locale=en-US

在 Linux 上配置没有 DSN 的连接

要通过不带 DSN 的连接来连接到数据存储,请在 odbcinst.ini 文件中定义驱动程序。然后,在应用程序中提供一个无 DSN 的连接字符串。

在 Linux 操作系统上,使用以下格式:

[ODBC Drivers] driver_name=Installed ... [driver_name] Description=driver_description Driver=path/driver_file ...

以下示例显示了在 Linux 操作系统上使用 64 位 ODBC 驱动程序配置 odbcinst.ini

[ODBC Drivers] Amazon Redshift ODBC Driver (x64)=Installed [Amazon Redshift ODBC Driver (x64)] Description=Amazon Redshift ODBC Driver (64-bit) Driver=/opt/amazon/redshiftodbcx64/librsodbc64.so