

 从补丁 198 开始，Amazon Redshift 将不再支持创建新的 Python UDF。现有的 Python UDF 将继续正常运行至 2026 年 6 月 30 日。有关更多信息，请参阅[博客文章](https://www.amazonaws.cn/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)。

# 在 Linux 上使用 Amazon Redshift ODBC 驱动程序
在 Linux 上使用 ODBC 驱动程序

您可以在可访问 Amazon Redshift 数据仓库的客户端计算机上安装 Amazon Redshift ODBC 驱动程序。在其上安装该驱动程序的每台计算机都必须满足一系列最低系统要求。有关最低系统要求的信息，请参阅 [Amazon Redshift ODBC 连接器安装和配置指南](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)。在中国 Amazon 区域，使用以下链接：[Amazon Redshift ODBC 连接器安装和配置指南](https://s3.cn-north-1.amazonaws.com.cn/redshift-downloads-cn/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)。

**Topics**
+ [

# 下载并安装 Amazon Redshift ODBC 驱动程序
](odbc-driver-linux-how-to-install.md)
+ [

# 使用 ODBC 驱动程序管理器配置驱动程序
](odbc-driver-configure-linux.md)

# 下载并安装 Amazon Redshift ODBC 驱动程序
下载并安装 ODBC 驱动程序

按照此部分中的步骤在受支持的 Linux 发行版上下载并安装 Amazon Redshift ODBC 驱动程序。在安装过程中，驱动程序文件将被安装到以下目录中：
+ `/opt/amazon/redshiftodbc/lib/64`（对于 64 位驱动程序）
+ `/opt/amazon/redshiftodbc/ErrorMessages`
+ `/opt/amazon/redshiftodbc/Setup`
+  `/opt/amazon/redshiftodbc/lib/32`（对于 32 位驱动程序）<a name="rs-mgmt-install-odbc-drivers-linux"></a>

**要安装 Amazon Redshift ODBC 驱动程序**

1. 根据您的 SQL 客户端工具或应用程序的系统架构，下载以下驱动程序之一：
   + [64 位 RPM 驱动程序版本 1.6.3](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/AmazonRedshiftODBC-64-bit-1.6.3.1008-1.x86_64.rpm) 在中国 Amazon 区域，使用以下链接：[64 位 RPM 驱动程序版本 1.6.3](https://s3.cn-north-1.amazonaws.com.cn/redshift-downloads-cn/drivers/odbc/1.6.3.1008/AmazonRedshiftODBC-64-bit-1.6.3.1008-1.x86_64.rpm)。
   + [64 位 Debian 驱动程序版本 1.6.3](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/AmazonRedshiftODBC-64-bit-1.6.3.1008-1.x86_64.deb) 在中国 Amazon 区域，使用以下链接：[64 位 Debian 驱动程序版本 1.6.3](https://s3.cn-north-1.amazonaws.com.cn/redshift-downloads-cn/drivers/odbc/1.6.3.1008/AmazonRedshiftODBC-64-bit-1.6.3.1008-1.x86_64.deb)。
   + [32 位驱动程序版本 1.4.52在中国 Amazon 区域，使用以下链接：[64 位 RPM 驱动程序版本 1.6.3](https://s3.cn-north-1.amazonaws.com.cn/redshift-downloads-cn/drivers/odbc/1.6.3.1008/AmazonRedshiftODBC-64-bit-1.6.3.1008-1.x86_64.rpm)。](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.4.52.1000/AmazonRedshiftODBC-32-bit-1.4.52.1000-1.i686.rpm)在中国 Amazon 区域，使用以下链接：[32 位驱动程序版本 1.4.52](https://s3.cn-north-1.amazonaws.com.cn/redshift-downloads-cn/drivers/odbc/1.4.52.1000/AmazonRedshiftODBC-32-bit-1.4.52.1000-1.i686.rpm) 

   这些驱动程序的名称均是 Amazon Redshift ODBC 驱动程序。32 位 ODBC 驱动程序已停产。除了紧急安全补丁外，不会发布进一步的更新。
**注意**  
下载适用于您的 SQL 客户端工具或应用程序系统架构的程序包。例如，如果您的客户端工具是 64 位，则安装 64 位驱动程序。

    然后，下载并查看 [Amazon Redshift ODBC 和 JDBC 驱动程序许可证协议](https://s3.amazonaws.com/redshift-downloads/drivers/Amazon+Redshift+ODBC+and+JDBC+Driver+License+Agreement.pdf)。在中国（北京）区域中，使用以下链接：[Amazon Redshift ODBC 和 JDBC 驱动程序许可证协议](https://s3.cn-north-1.amazonaws.com.cn/redshift-downloads-cn/drivers/Amazon+Redshift+ODBC+and+JDBC+Driver+License+Agreement.pdf)。

1. 转至您下载程序包的位置，然后运行以下命令之一。使用适用于您的 Linux 发行版的命令。
   + 在 RHEL 和 CentOS 操作系统上，运行以下命令。

     ```
     yum -nogpgcheck localinstall RPMFileName
     ```

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

     ```
     yum -nogpgcheck localinstall AmazonRedshiftODBC-64-bit-1.x.xx.xxxx-x.x86_64.rpm
     ```
   + 在 SLES 上，运行以下命令。

     ```
     zypper install RPMFileName
     ```

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

     ```
     zypper install AmazonRedshiftODBC-1.x.x.xxxx-x.x86_64.rpm
     ```
   + 在 Debian 上，运行以下命令。

     ```
     sudo apt install ./DEBFileName.deb
     ```

     将 `DEBFileName.deb` 替换为 Debian 包文件名。例如，以下命令将演示如何安装 64 位驱动程序。

     ```
     sudo apt install ./AmazonRedshiftODBC-1.x.x.xxxx-x.x86_64.deb
     ```

**重要**  
安装完驱动程序后，请对其进行配置以在您的系统上使用。有关驱动程序配置的更多信息，请参阅[使用 ODBC 驱动程序管理器配置驱动程序使用 ODBC 驱动程序管理器配置驱动程序](odbc-driver-configure-linux.md)。

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

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

有关用来配置 Amazon Redshift ODBC 驱动程序的受支持的 ODBC 驱动程序管理器的更多信息，请参阅 [在 Linux 上使用 Amazon Redshift ODBC 驱动程序在 Linux 上使用 ODBC 驱动程序](install-odbc-driver-linux.md)（适用于 Linux 操作系统）。另请参阅 [Amazon Redshift ODBC 连接器安装和配置指南](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)中的“在非 Windows 计算机上指定 ODBC 驱动程序管理器”。在中国 Amazon 区域，使用以下链接：[Amazon Redshift ODBC 连接器安装和配置指南](https://s3.cn-north-1.amazonaws.com.cn/redshift-downloads-cn/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)

要配置 Amazon Redshift ODBC 驱动程序，需要提供以下三个文件：`amazon.redshiftodbc.ini`、`odbc.ini` 和 `odbcinst.ini`。

如果您将驱动程序安装在默认位置，`amazon.redshiftodbc.ini` 配置文件则位于以下目录之一：
+ `/opt/amazon/redshiftodbc/lib/64`（适用于 Linux 操作系统上的 64 位驱动程序）
+ `/opt/amazon/redshiftodbc/lib/32`（适用于 Linux 操作系统上的 32 位驱动程序）

此外，在 Linux 上的 `/opt/amazon/redshiftodbc/Setup` 下，还有示例 `odbc.ini` 和 `odbcinst.ini` 文件。您可以使用这些文件作为配置 Amazon Redshift ODBC 驱动程序和数据来源名称 (DSN) 的示例。

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

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

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

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

默认情况下，ODBC 驱动程序管理器将配置为使用主目录中隐藏的 `odbc.ini` 和 `odbcinst.ini` 配置文件版本（名为 .`odbc.ini` 和 .`odbcinst.ini`）。它们也被配置为使用驱动程序安装目录的 `amazon.redshiftodbc.ini` 子文件夹中的 `/lib` 文件。如果您将这些配置文件存储在其他位置，请设置如下所述的环境变量，以便驱动程序管理器能够找到这些文件。有关更多信息，请参阅 [Amazon Redshift ODBC 连接器安装和配置指南](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)中的“指定驱动程序配置文件的位置”。在中国 Amazon 区域，使用以下链接：[Amazon Redshift ODBC 连接器安装和配置指南](https://s3.cn-north-1.amazonaws.com.cn/redshift-downloads-cn/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf) 

## 在 Linux 操作系统上创建数据来源名称


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

有关如何配置 `odbc.ini` 文件的信息，请参阅 [Amazon Redshift ODBC 连接器安装和配置指南](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)中的“在非 Windows 计算机上创建数据源名称”在中国 Amazon 区域，使用以下链接：[Amazon Redshift ODBC 连接器安装和配置指南](https://s3.cn-north-1.amazonaws.com.cn/redshift-downloads-cn/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf) 

 请在 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 (x64)

[Amazon Redshift (x64)]
Driver=/opt/amazon/redshiftodbc/lib/64/libamazonredshiftodbc64.so
Host=examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com
Port=5932
Database=dev
locale=en-US
```

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

```
[ODBC Data Sources]
Amazon_Redshift_x32=Amazon Redshift (x86)

[Amazon Redshift (x86)]
Driver=/opt/amazon/redshiftodbc/lib/32/libamazonredshiftodbc32.so
Host=examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com
Port=5932
Database=dev
locale=en-US
```

## 在 Linux 操作系统上配置没有 DSN 的连接


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

有关在这种情况下如何配置 `odbcinst.ini` 文件的信息，请参阅 [Amazon Redshift ODBC 连接器安装和配置指南](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)中的“在非 Windows 计算机上配置没有 DSN 的连接”。在中国 Amazon 区域，使用以下链接：[Amazon Redshift ODBC 连接器安装和配置指南](https://s3.cn-north-1.amazonaws.com.cn/redshift-downloads-cn/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf) 

请在 Linux 操作系统上使用以下格式。

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

以下示例显示了安装在 Linux 操作系统默认目录中的 64 位驱动程序的 `odbcinst.ini` 配置。

```
[ODBC Drivers]
Amazon Redshift (x64)=Installed

[Amazon Redshift (x64)]
Description=Amazon Redshift ODBC Driver (64-bit)
Driver=/opt/amazon/redshiftodbc/lib/64/libamazonredshiftodbc64.so
```

以下示例显示了安装在 Linux 操作系统默认目录中的 32 位驱动程序的 `odbcinst.ini` 配置。

```
[ODBC Drivers]
Amazon Redshift (x86)=Installed

[Amazon Redshift (x86)]
Description=Amazon Redshift ODBC Driver (32-bit)
Driver=/opt/amazon/redshiftodbc/lib/32/libamazonredshiftodbc32.so
```

## 配置环境变量


使用正确的 ODBC 驱动程序管理器加载正确的驱动程序。为此，请设置库路径环境变量。有关更多信息，请参阅 [Amazon Redshift ODBC 连接器安装和配置指南](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)中的“在非 Windows 计算机上指定 ODBC 驱动程序管理器”。在中国 Amazon 区域，使用以下链接：[Amazon Redshift ODBC 连接器安装和配置指南](https://s3.cn-north-1.amazonaws.com.cn/redshift-downloads-cn/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)

默认情况下，ODBC 驱动程序管理器将配置为使用主目录中隐藏的 `odbc.ini` 和 `odbcinst.ini` 配置文件版本（名为 .`odbc.ini` 和 .`odbcinst.ini`）。它们也被配置为使用驱动程序安装目录的 `/lib` 子文件夹中的 `amazon.redshiftodbc.ini` 文件。如果您将这些配置文件存储在其他位置，请设置环境变量，以便驱动程序管理器能够找到这些文件。有关更多信息，请参阅《Amazon Redshift ODBC 连接器安装和配置指南**中的“指定驱动程序配置文件的位置”。

## 配置连接功能


可以为 ODBC 设置配置以下连接功能：
+ 配置 ODBC 驱动程序以提供凭证并验证与 Amazon Redshift 数据库的连接。
+ 如果要连接到启用了 SSL 的 Amazon Redshift 服务器，请将 ODBC 驱动程序配置为连接到启用了安全套接字层 (SSL) 的套接字。
+ 将 ODBC 驱动程序配置为通过代理服务器连接到 Amazon Redshift。
+ 将 ODBC 驱动程序配置为使用查询处理模式来防止查询占用过多内存。
+ 将 ODBC 驱动程序配置为通过代理服务器传递 IAM 身份验证过程。
+ 将 ODBC 驱动程序配置为使用 TCP Keepalive 来防止连接超时。

有关这些连接功能的信息，请参阅 [Amazon Redshift ODBC 连接器安装和配置指南](https://s3.amazonaws.com/redshift-downloads/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)。在中国 Amazon 区域，使用以下链接：[Amazon Redshift ODBC 连接器安装和配置指南](https://s3.cn-north-1.amazonaws.com.cn/redshift-downloads-cn/drivers/odbc/1.6.3.1008/Amazon+Redshift+ODBC+Connector+Install+Guide.pdf)。