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

JDBC 驱动程序版本 2.1 配置的选项

下面,您可以找到您可以为 Amazon Redshift JDBC 驱动程序 2.1 版本指定的选项的说明。

您可以使用连接 URL 设置配置属性。有关更多信息,请参阅 构建连接 URL

AccessKeyID

  • 默认值 – 无

  • 数据类型 – 字符串

您可以指定此参数以输入 IAM 用户或角色的 IAM 访问密钥。您通常可以通过查看现有的字符串或用户配置文件来查找密钥。如果您指定此参数,还必须指定 SecretAccessKey 参数。

此参数为可选项。

AllowDBUserOverride

  • 默认值:0

  • 数据类型 – 字符串

此选项指定驱动程序是使用 SAML 断言中的 DbUser 值,还是连接 URL 的 DbUser 连接属性中指定的值。

此参数为可选项。

1

驱动程序使用 SAML 断言中的 DbUser 值。

如果 SAML 断言没有为 DBUser 指定值,则驱动程序将使用 DBUser 连接属性中指定的值。如果连接属性也没有指定值,则驱动程序将使用连接配置文件中指定的值。

0

驱动程序使用 DBUser 连接属性中指定的 DBUser 值。

如果 DBUser 连接属性没有指定值,则驱动程序将使用连接配置文件中指定的值。如果连接配置文件也没有指定值,则驱动程序将使用 SAML 断言中的值。

App_ID

  • 默认值 – 无

  • 数据类型 – 字符串

Okta 提供的与您的 Amazon Redshift 应用程序关联的唯一 ID。

如果通过 Okta 服务进行身份验证,则此参数是必需的。

App_Name

  • 默认值 – 无

  • 数据类型 – 字符串

您用于验证与 Amazon Redshift 的连接的 Okta 应用程序的名称。

此参数为可选项。

ApplicationName

  • 默认值 – null

  • 数据类型 – 字符串

传递给 Amazon Redshift 以供审计的应用程序的名称。

此参数为可选项。

AuthProfile

  • 默认值 – 无

  • 数据类型 – 字符串

用于连接到 Amazon Redshift 的身份验证配置文件的名称。

此参数为可选项。

AutoCreate

  • 默认值 – false

  • 数据类型 – Boolean

此选项指定在指定用户不存在时驱动程序是否导致新用户被创建。

此参数为可选项。

true

如果通过 DBUser 或唯一 ID (UID) 指定的用户不存在,则会创建具有该名称的新用户。

false

驱动程序不会导致新用户被创建。如果指定的用户不存在,则身份验证将失败。

Client_ID

  • 默认值 – 无

  • 数据类型 – 字符串

使用 Azure AD 服务对连接进行身份验证时使用的客户端 ID。

如果通过 Azure AD 服务进行身份验证,则此参数是必需的。

Client_Secret

  • 默认值 – 无

  • 数据类型 – 字符串

使用 Azure AD 服务对连接进行身份验证时使用的客户端密钥。

如果通过 Azure AD 服务进行身份验证,则此参数是必需的。

ClusterID

  • 默认值 – 无

  • 数据类型 – 字符串

要连接到的 Amazon Redshift 集群的名称。

此参数为可选项。

connectTimeout

  • 默认值 – 10

  • 数据类型 – 整数

用于套接字连接操作的超时值。如果建立 Amazon Redshift 连接所需的时间超过此值,则系统将该连接视为不可用。超时以秒为单位指定。值为 0 表示未指定超时。

此参数为可选项。

databaseMetadataCurrentDbOnly

  • 默认值 – true

  • 数据类型 – Boolean

此选项指定元数据 API 是从所有可访问的数据库中检索数据,还是仅从连接的数据库检索数据。

此参数为可选项。

可以指定以下值:

true

应用程序从单个数据库中检索元数据。

false

应用程序从所有可访问的数据库中检索元数据。

DbUser

  • 默认值 – 无

  • 数据类型 – 字符串

用于您的 Amazon Redshift 账户的用户 ID。如果您启用了 AutoCreate 属性,则可以使用当前不存在的 ID。

此参数为可选项。

DbGroups

  • 默认值 – PUBLIC

  • 数据类型 – 字符串

DBUser 为当前会话加入的现有数据库组名称的逗号分隔列表。

此参数为可选项。

DBNAME

  • 默认值 – null

  • 数据类型 – 字符串

要连接的数据库的名称。您可以使用此选项在 JDBC 连接 URL 中指定数据库名称。

此参数为必需参数。您必须在连接 URL 或客户端应用程序的连接属性中指定数据库名称。

defaultRowFetchSize

  • 默认值:0

  • 数据类型 – 整数

此选项可指定 getFetchSize 的默认值。

此参数为可选项。

可以指定以下值:

0

在单一操作中取回所有行。

正整数

对于 ResultSet 的每次取回迭代,要从数据库中取回的行数。

DisableIsValidQuery

  • 默认值 – False

  • 数据类型 – Boolean

此选项指定驱动程序在使用 Connection.isValid() 方法来确定数据库连接是否处于活动状态时是否提交新的数据库查询。

此参数为可选项。

true

驱动程序在使用 Connection.isValid() 方法来确定数据库连接是否处于活动状态时不提交查询。如果数据库服务器意外关闭,这可能会导致驱动程序错误地将数据库连接标识为活动状态。

false

驱动程序在使用 Connection.isValid() 方法来确定数据库连接是否处于活动状态时提交查询。

enableFetchReadAndProcessBuffers

  • 默认值 – true

  • 数据类型 – Boolean

使用此选项,可以让 Amazon Redshift 使用环形缓冲区和单独线程上的处理缓冲区来提取行,进而提高性能。

此参数为可选项。

enableFetchRingBuffer

  • 默认值 – true

  • 数据类型 – Boolean

此选项指定驱动程序使用单独线程上的环形缓冲区取回行。fetchRingBufferSize 参数指定环形缓冲区的大小。

此参数为可选项。

enableMultiSqlSupport

  • 默认值 – true

  • 数据类型 – Boolean

此选项指定是否处理语句中以分号分隔的多个 SQL 命令。

此参数为可选项。

可以指定以下值:

true

驱动程序处理语句对象中多个用分号分隔的 SQL 命令。

false

驱动程序为单个语句中的多个 SQL 命令返回错误。

fetchRingBufferSize

  • 默认值 – 1G

  • 数据类型 – 字符串

此选项指定在取回结果集时使用的环形缓冲区的大小。您可以指定以字节为单位的大小,例如 1K 表示 1 KB,5000 代表 5000 字节,1M 表示 1 MB,1G 表示 1 GB,依此类推。您还可以指定堆内存的百分比。驱动程序在达到限制时停止取回行。当应用程序读取行并释放环形缓冲区中的空间时,取回将恢复。

此参数为可选项。

ForceLlowcase

  • 默认值 – false

  • 数据类型 – Boolean

此选项指定在使用 SSO 身份验证时,驱动程序是否会将从身份提供程序发送到 Amazon Redshift 的所有数据库组 (DbGroup) 小写。

此参数为可选项。

true

驱动程序会小写从身份提供程序发送的所有数据库组。

false

驱动程序不会更改数据库组。

groupFederation

  • 默认值 – false

  • 数据类型 – Boolean

此选项指定是否使用 Amazon Redshift IDP 组。此选项由 GetCluster CredentialSV2 API 支持。

此参数为可选项。

true

使用 Amazon Redshift 身份提供商(IDP)组。

false

使用 STS API 和 GetClusterCredentials 进行用户联合身份验证,并明确指定用于连接的 DbGroups。

HOST

  • 默认值 – null

  • 数据类型 – 字符串

要连接到 Amazon Redshift 服务器的主机名。您可以使用此选项在 JDBC 连接 URL 中指定主机名。

此参数为必需参数。您必须在连接 URL 或客户端应用程序的连接属性中指定主机名。

IAMDisableCache

  • 默认值 – false

  • 数据类型 – Boolean

此选项指定是否缓存 IAM 凭证。

此参数为可选项。

true

IAM 凭证不会被缓存。

false

IAM 凭证将被缓存。例如,当对 API 网关的请求受到限制时,这会提高性能。

IAMDuration

  • 默认值 – 900

  • 数据类型 – 整数

临时 IAM 凭证过期之前的时间长度 (以秒为单位)。

  • 最小值 – 900

  • 最大值 – 3,600

此参数为可选项。

IdP_Host

  • 默认值 – 无

  • 数据类型 – 字符串

您用于对 Amazon Redshift 进行身份验证的 IdP(身份提供商)主机。该选项可以在连接字符串或配置文件中指定。

此参数为可选项。

IdP_Port

  • 默认值 – 无

  • 数据类型 – 字符串

IdP(身份提供商)使用的端口。您可以在连接字符串或配置文件中指定端口。默认端口为 5439。

此参数为可选项。

IdP_Tenant

  • 默认值 – 无

  • 数据类型 – 字符串

适用于您的 Amazon Redshift 应用程序的 Azure AD 租户 ID。

如果通过 Azure AD 服务进行身份验证,则此参数是必需的。

IdP_Response_Timeout

  • 默认值 – 120

  • 数据类型 – 整数

当通过浏览器插件使用 SAML 或 Azure AD 服务时,驱动程序等待身份提供商发出 SAML 响应的时间(以秒为单位)。

此参数为可选项。

IniFile

  • 默认值 – 无

  • 数据类型 – 字符串

.ini 文件的完整路径,包括文件名。例如:

IniFile="C:\tools\rsjdbc.ini"

有关 .ini 文件的信息,请参阅为 JDBC 驱动程序版本 2.1 创建初始化(.ini)文件

此参数为可选项。

IniSection

  • 默认值 – 无

  • 数据类型 – 字符串

.ini 文件中包含配置选项的部分的名称。有关 .ini 文件的信息,请参阅为 JDBC 驱动程序版本 2.1 创建初始化(.ini)文件

以下示例指定 .ini 文件的 [Prod] 部分:

IniSection="Prod"

此参数为可选项。

Login_URL

  • 默认值 – 无

  • 数据类型 – 字符串

通过浏览器插件使用 SAML 或 Azure AD 服务时,身份提供商网站上的资源 URL。

如果通过浏览器插件使用 SAML 或 Azure AD 服务进行身份验证,则此参数是必需的。

loginTimeout

  • 默认值:0

  • 数据类型 – 整数

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

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

此参数为可选项。

loginToRp

  • 默认值urn:amazon:webservices

  • 数据类型 – 字符串

要用于 AD FS 身份验证类型的信赖方信任。

此参数为可选项。

日志级别

  • 默认值:0

  • 数据类型 – 整数

使用此属性可以打开或关闭驱动程序中的日志记录并指定包含在日志文件中的详细信息量。

只有启用足够长的日志记录才能捕获问题。日志记录会降低性能,并会占用大量磁盘空间。

此参数为可选项。

将参数设置为以下值之一:

0

禁用所有日志记录。

1

启用 FATAL 级别的日志记录,该级别日志记录将记录导致驱动程序中止的非常严重错误事件。

2

启用 ERROR 级别的日志记录,该级别日志记录将记录可能仍然允许驱动程序继续运行的错误事件。

3

启用 WARNING 级别的日志记录,该级别日志记录将记录在未执行操作时可能导致错误的事件。

4

启用 INFO 级别的日志记录,该级别日志记录将记录描述驱动程序进程的一般信息。

5

启用 DEBUG 级别的日志记录,该级别日志记录将记录对调试驱动程序很有用的详细信息。

6

启用 TRACE 级别的日志记录,该级别日志记录将记录所有驱动程序活动。

启用日志记录后,驱动程序会在 LogPath 属性指定的位置生成以下日志文件:

  • redshift_jdbc.log – 记录不特定于连接的驱动程序活动的文件。

  • redshift_jdbc_connection_[Number].log – 与数据库建立的每个连接的文件,其中 [Number] 是区分每个日志文件和其他日志文件的数字。此文件记录特定于连接的驱动程序活动。

如果 LogPath 值无效,则驱动程序将记录的信息发送到标准输出流 System.out

LogPath

  • 默认值 – 当前工作目录。

  • 数据类型 – 字符串

启用 DSILogLevel 属性时驱动程序保存日志文件所在的文件夹的完整路径。

为了确保连接 URL 与所有 JDBC 应用程序兼容,我们建议您通过键入另一个反斜杠来转义文件路径中的反斜杠 (\)。

此参数为可选项。

Partner_SPID

  • 默认值 – 无

  • 数据类型 – 字符串

在使用 PPingFederate 服务验证连接时使用的合作伙伴 SPID(服务提供商 ID)值。

此参数为可选项。

Password

  • 默认值 – 无

  • 数据类型 – 字符串

使用 IAM 身份验证通过 IDP 进行连接时,它是 IDP_Host 服务器的密码。使用标准身份验证时,它可用于 Amazon Redshift 数据库密码,而不是 PWD。

此参数为可选项。

Plugin_Name

  • 默认值 – 无

  • 数据类型 – 字符串

实施特定凭证提供程序插件的完全限定类名称。

此参数为可选项。

以下提供程序选项受支持:

  • AdfsCredentialsProvider – Active Directory 联合身份验证服务

  • AzureCredentialsProvider – Microsoft Azure Active Directory (AD) 服务

  • BasicJwtCredentialsProvider – JSON Web Token (JWT) 服务

  • BasicSamlCredentialsProvider – 您可以与许多 SAML 服务提供商一起使用的安全断言标记语言(SAML)凭据。

  • BrowserAzureCredentialsProvider – 浏览器 Microsoft Azure Active Directory (AD) 服务

  • BrowserSamlCredentialsProvider – 用于 SAML 服务(如 Okta、Ping 或 ADFS)的浏览器 SAML

  • OktaCredentialsProvider – Okta 服务

  • PingCredentialsProvider – PingFederate 服务

PORT

  • 默认值 – null

  • 数据类型 – 整数

要连接到 Amazon Redshift 服务器的端口。您可以使用此选项在 JDBC 连接 URL 中指定端口。

此参数为可选项。

Preferred_Role

  • 默认值 – 无

  • 数据类型 – 字符串

您希望在 Amazon Redshift 连接期间代入的 IAM 角色。

此参数为可选项。

Profile

  • 默认值 – 无

  • 数据类型 – 字符串

用于 IAM 身份验证的配置文件的名称。此配置文件包含未在连接字符串中指定的任何其他连接属性。

此参数为可选项。

PWD

  • 默认值 – 无

  • 数据类型 – 字符串

与您使用属性 UID 提供的 Amazon Redshift 用户名相对应的密码。

此参数为可选项。

queryGroup

  • 默认值 – null

  • 数据类型 – 字符串

此选项通过将查询分配到相应的查询组在运行时向队列分配查询。将为会话设置查询组。在连接上运行的所有查询都属于此查询组。

此参数为可选项。

readOnly

  • 默认值 – false

  • 数据类型 – Boolean

此属性指定驱动程序是否处于只读模式。

此参数为可选项。

true

连接处于只读模式,无法写入数据存储。

false

连接不处于只读模式,可以写入数据存储。

区域

  • 默认值 – null

  • 数据类型 – 字符串

此选项指定集群所在的 Amazon 区域。如果指定 StsEndPoint 选项,则会忽略 Region(区域)选项。Redshift GetClusterCredentials API 操作也使用 Region(区域)选项。

此参数为可选项。

reWriteBatchedInserts

  • 默认值 – false

  • 数据类型 – Boolean

通过此选项,可以优化批处理的兼容 INSERT 语句的重写和合并。

此参数为可选项。

reWriteBatchedInsertsSize

  • 默认值 – 128

  • 数据类型 – 整数

通过此选项,可以优化批处理的兼容 INSERT 语句的重写和合并。此值必须以 2 为幂呈指数增加。

此参数为可选项。

roleArn

  • 默认值 – 无

  • 数据类型 – 字符串

角色的 Amazon Resource Name (ARN)。在为 Plugin_Name 选项指定 BasicJwtCredentialsProvider 时,请确保指定此参数。采用以下格式指定 ARN:

arn:partition:service:region:account-id:resource-id

如果您为 Plugin_Name 选项指定 BasicJwtCredentialsProvider,则此参数为必填项。

roleSessionName

  • 默认值 – jwt_redshift_session

  • 数据类型 – 字符串

所代入角色会话的标识符。通常,您可以传递与应用程序用户关联的名称或标识符。您的应用程序使用的临时安全凭证与该用户相关联。在为 Plugin_Name 选项指定 BasicJwtCredentialsProvider 时,您可以指定此参数。

此参数为可选项。

SecretAccessKey

  • 默认值 – 无

  • 数据类型 – 字符串

用户或角色的 IAM 访问密钥。如果指定了此选项,则还必须指定 AccessKeyID。

此参数为可选项。

SessionToken

  • 默认值 – 无

  • 数据类型 – 字符串

与您用于身份验证的 IAM 角色关联的临时 IAM 会话令牌。

此参数为可选项。

socketFactory

  • 默认值 – null

  • 数据类型 – 字符串

此选项指定了用于创建套接字的 socketFactory。

此参数为可选项。

socketTimeout

  • 默认值:0

  • 数据类型 – 整数

套接字读取操作发生超时前等待的秒数。如果操作用时长于此阈值,则连接将被关闭。当此属性设置为 0 时,连接不会发生超时。

此参数为可选项。

SSL

  • 默认值 – TRUE

  • 数据类型 – 字符串

使用此属性可以打开或关闭连接的 SSL。

此参数为可选项。

可以指定以下值:

TRUE

驱动程序通过 SSL 连接到服务器。

FALSE

驱动程序在不使用 SSL 的情况下连接到服务器。IAM 身份验证不支持此选项。

或者,您也可以配置 AuthMech 属性。

SSL_Insecure

  • 默认值 – true

  • 数据类型 – 字符串

此属性指示是否应验证 IDP 主机服务器证书。

此参数为可选项。

可以指定以下值:

true

驱动程序不检查 IDP 服务器证书的真实性。

false

驱动程序检查 IDP 服务器证书的真实性。

SSLCert

  • 默认值 – 无

  • 数据类型 – 字符串

.pem 或 .crt 文件的完整路径,其中包含在使用 SSL 时用于验证 Amazon Redshift 服务器实例的其他受信任 CA 证书。

如果指定了 SSLKey,则此参数为必填项。

SSLFactory

  • 默认值 – 无

  • 数据类型 – 字符串

在不使用服务器证书的情况下,通过 TLS/SSL 连接到服务器时使用的 SSL 出厂设置。

SSLKey

  • 默认值 – 无

  • 数据类型 – 字符串

.der 文件的完整路径,包含用于验证 SSLCert 中指定的证书的 PKCS8 密钥文件。

如果指定了 SSLCert,则此参数为必填项。

SSLMode

  • 默认值 – verify-ca

  • 数据类型 – 字符串

使用此属性指定启用 TLS/SSL 时驱动程序如何验证证书。

此参数为可选项。

可以指定以下值:

verify-ca

驱动程序验证证书是否来自受信任的证书颁发机构 (CA)。

verify-full

驱动程序验证证书来自受信任的 CA,以及证书中的主机名是否与连接 URL 中指定的主机名匹配。

SSLPassword

  • 默认值:0

  • 数据类型 – 字符串

在 SSLKey 中指定的加密密钥文件的密码。

如果指定了 SSLKey 且对密钥文件进行了加密,则此参数为必填项。

SSLRootCert

  • 默认值 – 无

  • 数据类型 – 字符串

.pem 或 .crt 文件的完整路径,其中包含在使用 SSL 时用于验证 Amazon Redshift 服务器实例的根 CA 证书。

StsEndpointUrl

  • 默认值 – Null

  • 数据类型 – 字符串

您可以指定 Amazon Security Token Service (Amazon STS) 端点。如果指定此选项,则 Region(区域)选项将被忽略。您只能为此端点指定安全协议 (HTTPS)。

tcpKeepAlive

  • 默认值 – TRUE

  • 数据类型 – 字符串

使用此属性可打开或关闭 TCP Keepalive。

此参数为可选项。

可以指定以下值:

TRUE

驱动程序将使用 TCP Keepalive 来防止连接超时。

FALSE

驱动程序不使用 TCP Keepalive。

UID

  • 默认值 – 无

  • 数据类型 – 字符串

用于访问数据库的用户名。

此参数为必需参数。

User

  • 默认值 – 无

  • 数据类型 – 字符串

使用 IAM 身份验证通过 IDP 进行连接时,它是 idp_host 服务器的用户名。使用标准身份验证时,它可用于 Amazon Redshift 数据库用户名。

此参数为可选项。

webIdentityToken

  • 默认值 – 无

  • 数据类型 – 字符串

身份提供商提供的 OAuth 2.1 访问令牌或 OpenID Connect ID 令牌。您的应用程序必须通过 Web 身份提供商对您的应用程序用户进行身份验证来获取此令牌。在为 Plugin_Name 选项指定 BasicJwtCredentialsProvider 时,请确保指定此参数。

如果您为 Plugin_Name 选项指定 BasicJwtCredentialsProvider,则此参数为必填项。