配置 JDBC 驱动程序版本 2.0 连接 - Amazon Redshift
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

配置 JDBC 驱动程序版本 2.0 连接

您可以使用 JDBC 驱动程序版本 2.0 连接从许多第三方 SQL 客户端工具连接到 Amazon Redshift 集群。为此,请下载 JDBC 驱动程序。

要使用 JDBC 连接,请执行以下步骤并使用以下选项。

为您的 JDBC 连接配置身份验证和 SSL

配置 Amazon Redshift JDBC 驱动程序,以根据要连接到的 Amazon Redshift 服务器的安全要求对连接进行身份验证。

要对连接进行身份验证,请始终提供您的 Amazon Redshift 用户名和密码。该密码是使用密码的加盐 MD5 哈希传输的。根据安全套接字层 (SSL) 是否已启用并且在服务器上是必需的,您可能还需要将驱动程序配置为通过 SSL 进行连接。您可能需要使用单向 SSL 身份验证,以便客户端 (驱动程序本身) 验证服务器的身份。

为您的 JDBC 连接配置 TCP keepalive

默认情况下,Amazon Redshift JDBC 驱动程序将配置为使用 TCP Keepalive 来防止连接超时。可以指定驱动程序开始发送 Keepalive 包的时间或通过在连接 URL 中设置相关属性来禁用该功能。有关连接 URL 语法的更多信息,请参阅构建连接 URL

属性 描述

TCPKeepAliveMinutes

要指定驱动程序发送 keepalive 数据包的时间,请设置驱动程序开始发送 TCP keepalive 数据包之前的不活动分钟数。

TCPKeepAlive

要禁用 TCP keepalive,请将此属性设置为 FALSE

使用 Apache Maven 配置 JDBC 连接

Apache Maven 是一款软件项目管理及理解工具。适用于 Java 的 AWS 开发工具包支持 Apache Maven 项目。有关更多信息,请参阅 中的将开发工具包与 Apache Maven 一起使用。AWS SDK for Java Developer Guide

如果您使用 Apache Maven,可以配置并生成您的项目,以使用 Amazon Redshift JDBC 驱动程序与 Amazon Redshift 集群连接。为此,在项目的 pom.xml 文件中将 JDBC 驱动程序添加为依赖项。如果您使用 Maven 生成项目并希望使用 JDBC 连接,请执行以下部分中的步骤。

将 JDBC 驱动程序配置为 Maven 依赖项

将 JDBC 驱动程序配置为 Maven 依赖项

  1. 将以下存储库添加到 pom.xml 文件的存储库部分。

    注意

    以下代码示例中的 URL 如果用在浏览器中,将返回错误。仅在 Maven 项目的上下文中使用此 URL。

    <repositories> <repository> <id>redshift</id> <url>http://redshift-maven-repository.s3-website-us-east-1.amazonaws.com/release</url> </repository> </repositories>

    要使用 SSL 进行连接,请将以下存储库添加到您的 pom.xml 文件。

    <repositories> <repository> <id>redshift</id> <url>https://s3.amazonaws.com/redshift-maven-repository/release</url> </repository> </repositories>
  2. pom.xml 文件的依赖项部分中,声明您要使用的驱动程序版本。

    Amazon Redshift 为与 JDBC 4.2 API 兼容的工具提供了驱动程序。 有关这些驱动程序支持的功能的信息,请参阅下载 Amazon Redshift JDBC 驱动程序

    从以下列表中添加驱动程序的依赖项。

    将以下示例中的 driver-version 替换为您的驱动程序版本。例如:2.0.0.0

    • 与 JDBC 4.2 兼容的驱动程序:–

      <dependency> <groupId>com.amazon.redshift</groupId> <artifactId>redshift-jdbc42</artifactId> <version>driver-version</version> </dependency>

      此驱动程序的类名是 com.amazon.redshift.jdbc42.Driver

使用 IAM 数据库身份验证时,Amazon Redshift Maven 驱动程序需要以下可选依赖项。

<dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-java-sdk-core</artifactId> <version>1.11.118</version> <scope>runtime</scope> <optional>true</optional> </dependency> <dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-java-sdk-redshift</artifactId> <version>1.11.118</version> <scope>runtime</scope> <optional>true</optional> </dependency> <dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-java-sdk-sts</artifactId> <version>1.11.118</version> <scope>runtime</scope> <optional>true</optional> </dependency>

如果您的工具需要使用某个早期版本的驱动程序,请参阅将以前的 JDBC 驱动程序版本与 Maven 一起使用

将驱动程序升级到最新版本

要将 Amazon Redshift JDBC 驱动程序升级或更改到最新版本,请先将依赖项的版本部分修改为驱动程序的最新版本。然后用 Maven Clean Plugin 清除您的项目,如下所示。

mvn clean