Amazon Redshift
集群管理指南 (API Version 2012-12-01)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。请点击 Amazon AWS 入门,可查看中国地区的具体差异

JDBC 驱动程序配置选项

要控制 Amazon Redshift JDBC 驱动程序的行为,您可以将下表中介绍的配置选项附加到 JDBC URL。例如,以下 JDBC URL 使用安全套接字层 (SSL)、用户 (UID) 和密码 (PWD) 连接到您的集群。

jdbc:redshift://examplecluster.abc123xyz789.us-west-2.redshift.amazonaws.com:5439/dev?ssl=true&UID=your_username&PWD=your_password

有关 SSL 选项的更多信息,请参阅使用 SSL 进行连接

JDBC 选项 是否存在匹配的 PostgreSQL 选项? 默认值 说明
AccessKeyID null 为 IAM 数据库身份验证配置的 IAM 角色或 IAM 用户的访问密钥 ID。AccessKeyID 选项包含在用于配置 IAM 数据库身份验证的选项集中。有关更多信息,请参阅 用于提供 IAM 凭证的 JDBC 和 ODBC 选项。AccessKeyID 和 SecretAccessKey 必须一起指定。
AuthMech DISABLE

已淘汰。默认情况下,Amazon Redshift 驱动程序会使用 SSL。请改为使用 ssl 和 sslmode。

AutoCreate false 指定 true 可使用为 DbUser 指定的名称创建数据库用户 (如果数据库用户不存在)。AutoCreate 选项包含在用于配置 IAM 数据库身份验证的选项集中。有关更多信息,请参阅 用于创建数据库用户凭证的 JDBC 和 ODBC 选项
BlockingRowsMode 0 内存中容纳的行数。一行被丢弃后,另一行会加载到其所在位置。
DbGroups null 数据库用户在当前会话中加入的现有数据库组的名称的逗号分隔列表。DbGroups 选项包含在用于配置 IAM 数据库身份验证的选项集中。有关更多信息,请参阅 用于创建数据库用户凭证的 JDBC 和 ODBC 选项
DbUser null 数据库用户的名称。DbUser 选项包含在用于配置 IAM 数据库身份验证的选项集中。有关更多信息,请参阅 用于创建数据库用户凭证的 JDBC 和 ODBC 选项
DisableIsValidQuery false

默认情况下,DisableIsValidQuery 设置为 False,这样 Java Connection.isValid() 方法就会检测 JDBC 驱动程序何时不再有有效的数据库连接,即使在数据库连接意外终止的情况下也适用。如使用版本 1.2.1 之前的 Amazon Redshift JDBC 驱动程序,isValid() 方法不能可靠地检测何时会失去有效的连接。要恢复为更早版本驱动程序的工作行为,请将 DisableIsValidQuery 设置为 true。

DSILogLevel 0

启用日志记录并指定包含在日志文件中的详细信息的数据量。下表列出了日志记录的详细信息级别。

  • 0 - 禁用所有日志记录。

  • 1 - 记录导致驱动程序终止的严重错误事件。

  • 2 - 记录也许不会导致驱动程序中止运行的错误事件。

  • 3 - 记录可能有害的情况。

  • 4 - 记录描述驱动程序进程的一般信息。

  • 5 - 记录用于调试驱动程序的详细信息。

  • 6 - 记录所有驱动程序活动。

FilterLevel NOTICE

客户端处理的消息的最低严重性等级。以下是可能的值(按严重性从最低到最高排列):

  • DEBUG

  • 信息

  • NOTICE

  • 警告

  • LOG

  • 错误

loginTimeout 0

连接服务器时发生超时前等待的秒数。如果建立连接的用时长于此阈值,则连接将被中止。

当此属性设置为默认值 0 时,连接不会发生超时。

loglevel null

驱动程序输出的日志信息量。默认情况下,不进行日志记录。信息将被输出到由驱动程序管理器中的 LogStream 或 LogValue 选项指定的位置。以下是可能的值:

  • 2 (DEBUG) – 在日志中记录大量详细信息。

  • 1 (INFO) – 在日志中记录少量详细信息。

注意

此属性可能会影响性能,因此只有在对驱动程序进行故障排除时才使用。

OpenSourceSubProtocolOverride false

启用后,此设置可以防止 Amazon Redshift JDBC 驱动程序与 PostgreSQL JDBC 驱动程序之间发生冲突。在某些情况下,您的应用程序可能同时连接到您的集群 (通过使用 Amazon Redshift JDBC 驱动程序) 和其他数据源 (通过使用 PostgreSQL JDBC 驱动程序)。在这种情况下,请将此连接属性附加到您用于连接到 PostgreSQL 数据源的 JDBC URL。以下是可能的值:

  • true – 启用 OpenSourceSubProtocolOverride。

  • false – 禁用 OpenSourceSubProtocolOverride。

Plugin_Name null 实施凭证提供程序的完全限定类名称。Plugin_Name 选项包含在用于配置 IAM 数据库身份验证的选项集中。有关更多信息,请参阅 使用凭证提供程序插件
个人资料 null AWS 凭证中配置文件的名称或包含 JDBC 连接选项值的 config 文件的名称。Plugin_Name 选项包含在用于配置 IAM 数据库身份验证的选项集中。有关更多信息,请参阅 使用配置文件
PWD null 用于连接 Amazon Redshift 服务器的密码。
SecretAccessKey null 为 IAM 数据库身份验证配置的 IAM 角色或 IAM 用户的秘密访问密钥。SecretAccessKey 选项包含在用于配置 IAM 数据库身份验证的选项集中。有关更多信息,请参阅 用于提供 IAM 凭证的 JDBC 和 ODBC 选项。AccessKeyID 和 SecretAccessKey 必须一起指定。
SessionToken null 为 IAM 数据库身份验证配置的 IAM 角色的临时会话令牌。为 IAM 用户配置 IAM 数据库身份验证时不需要 SessionToken。SessionToken 选项包含在用于配置 IAM 数据库身份验证的选项集中。有关更多信息,请参阅 用于提供 IAM 凭证的 JDBC 和 ODBC 选项。如果使用 SessionToken,还必须指定 AccessKeyID 和 SecretAccessKey。
socketTimeout 0

套接字读取操作发生超时前等待的秒数。如果操作用时长于此阈值,则连接将被关闭。

当此属性设置为默认值 0 时,连接不会发生超时。

ssl true

用于确定是否使用 SSL 连接的值。以下是可能的值:

  • true – 使用 SSL。

  • false – 不使用 SSL。

默认情况下,驱动程序将 ssl 设置为 true。如果为 IAM 身份验证将 ssl 显式设置为 false,连接尝试将失败。

sslMode null

这项设置用于确定如何处理服务器证书验证。以下是可能的值:

  • verify-ca - 必须使用 SSL,且必须验证服务器证书。

  • verify-full - 必须使用 SSL。必须验证服务器证书,且服务器主机名必须与证书上的主机名属性一致。

如果未指定 sslMode,则不需要服务器证书。

有关 sslMode 选项的更多信息,请参阅在 Java 中使用 SSL 和服务器证书

重要

Amazon Redshift 改变了我们管理 SSL 证书的方法。如果您必须使用早于 1.2.8.1005 的驱动程序版本,则可能需要更新当前的信任根 CA 证书,才能继续使用 SSL 连接集群。有关更多信息,请参阅 为 SSL 连接过渡到 ACM 证书

sslRootCert null

.pem 或 .crt 文件的完整路径,这些文件包含信任根证书颁发机构 (CA) 证书捆绑,用于在使用 SSL 时验证 Amazon Redshift 服务器证书。

tcpKeepAlive true

用于确定是否启用 TCP keepalive。以下是可能的值:

  • true – 启用 TCP keepalive。

  • false – 禁用 TCP keepalive。

TCPKeepAliveMinutes 5

发起 TCP keepalive 传输前处于不活动状态的分钟数阈值。

UID null 用于连接 Amazon Redshift 服务器的用户名。