

 从补丁 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/)。

# 使用 ODBC 驱动程序管理器配置 ODBC 驱动程序
<a name="odbc20-config-mac"></a>

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

## 使用 iODBC 或 unixODBC 驱动程序管理器配置 ODBC 驱动程序
<a name="odbc20-config-iodbc-mac"></a>

要配置 Amazon Redshift ODBC 驱动程序，需要以下文件：
+ ` amazon.redshiftodbc.ini `
+ ` odbc.ini `
+ ` odbcinst.ini `

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

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

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

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

 修改文件以添加 DSN 配置信息。在创建新文件时，还需设置环境变量，以指定这些配置文件的目标存储位置。

以下示例演示如何设置环境变量：

```
export ODBCINI=/Library/ODBC/odbc.ini
export ODBCSYSINI=/Library/ODBC
export ODBCINSTINI=${ODBCSYSINI}/odbcinst.ini
```

对于命令行应用程序：将导出命令添加到 Shell 启动文件（例如，`~/.bash_profile` 或 `~/.zshrc`）中。

有关支持的驱动程序管理器版本，请参阅[此处](https://docs.amazonaws.cn/redshift/latest/mgmt/odbc20-install-config-mac.html) 

### 在 Apple macOS 上使用数据来源名称（DSN）配置连接
<a name="odbc20-dsn-mac"></a>

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

在 Apple macOS 上，使用以下格式：

```
[ODBC Data Sources]
driver_name=dsn_name

[dsn_name]
Driver=path/driver_file
Host=cluster_endpoint
Port=port_number
Database=database_name
locale=locale
```

以下示例展示了在 Apple macOS 上使用 64 位 ODBC 驱动程序配置 `odbc.ini`。

```
[ODBC Data Sources]
Amazon_Redshift_x64=Amazon Redshift ODBC Driver (x64)

[Amazon_Redshift_x64]
Driver=/opt/amazon/redshiftodbcx64/librsodbc64.dylib
Host=examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com
Port=5932
Database=dev
locale=en-US
```

### 在 Apple macOS 上配置没有 DSN 的连接
<a name="odbc20-no-dsn-mac"></a>

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

在 Apple macOS 上，使用以下格式：

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

以下示例展示了在 Apple macOS 上使用 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.dylib
```