配置客户端、驱动程序、库或第三方应用程序以连接到 Snowflake

要配置客户端、驱动程序、库或应用程序以连接到 Snowflake,您必须指定 Snowflake 账户标识符。此外,您可能还需要指定应使用的仓库、数据库、架构和角色。

指定要使用的账户

客户端、连接器和驱动程序使用各种语法来连接到 Snowflake。通常,您应该使用包含组织名称 (orgname) 和账户名称 (account_name) 的变体,但以下例外:如果使用 Client Redirect 功能,请将账户名称 (account_name) 替换为连接名称 (connection_name)。有关此语法的示例,请参阅 使用连接 URL

要配置与 Snowflake 服务的专用连接,请在账户名称或账户定位器语法中添加 .privatelink。要确定在使用专用连接时,应使用哪个值连接到 Snowflake,请调用 Snowflake 账户中的 SYSTEM$GET_PRIVATELINK_CONFIG 功能。

如果您需要使用账户定位器,您可能还需要指定云区域 ID、云和政府合规级别,作为账户定位器之后的额外分段。有关要使用的格式,请参阅 格式 2:区域中的账户定位器。在下面的示例中,account_locator_with_additional_segments 表示账户位置,其中包含所需的任何额外分段。

SnowSQL:
  • 账户名称:snowsql -a orgname-account_name

  • 账户定位器:snowsql -a account_locator_with_additional_segments

有关更多信息,请参阅 连接语法

JDBC:
  • 账户名称:jdbc:snowflake://orgname>-<account_name.snowflakecomputing.cn/?connection_paramsr

  • 账户定位器:jdbc:snowflake://account_locator_with_additional_segments.snowflakecomputing.cn/?connection_params

有关更多信息,请参阅 JDBC 驱动程序连接字符串

ODBC:
  • 账户名称:

    • 服务器:orgname-account_name.snowflakecomputing.cn

  • 账户定位器:

    • 服务器:account_locator_with_additional_segments.snowflakecomputing.cn}

有关更多信息,请参阅 ODBC 配置和连接参数

Python:
  • 账户名称:

    • ACCOUNT 参数值设置为 orgname-account_name

  • 账户定位器:

    • ACCOUNT 参数值设置为 account_locator_with_additional_segments

有关更多信息,请参阅 使用 Python Connector 连接到 Snowflake

.Net:
  • 账户名称:

    • ACCOUNT 参数值设置为 orgname-account_name

    • HOST 参数值设置为默认值 (.snowflakecomputing.cn)。

  • 账户定位器:

    • ACCOUNT 参数值设置为 account_locator_with_additional_segments

    • HOST 参数值设置为默认值 .snowflakecomputing.cn。指定 Snowflake 账户是否不在 us-west 区域。

有关更多信息,请参阅 连接 (https://github.com/snowflakedb/snowflake-connector-net/blob/master/doc/Connecting.md)。

Golang:
  • 账户名称:db, err := sql.Open("snowflake", "jsmith:mypassword@orgname-account_name/mydb/testschema?warehouse=mywh")

  • 账户定位器:sql.Open("snowflake", "jsmith:mypassword@account_locator_with_additional_segments/mydb/testschema?warehouse=mywh")

有关更多信息,请参阅 连接字符串 (https://pkg.go.dev/github.com/snowflakedb/gosnowflake#hdr-Connection_String)。

node.js:
  • 账户名称:将 ACCOUNT 参数值设置为 orgname-account_name

  • 账户定位器:将 ACCOUNT 参数值设置为 account_locator_with_additional_segments

有关更多信息,请参阅 管理连接

Spark(连接器):
  • 账户名称:与 JDBC 相同

  • 账户定位器:与 JDBC 相同

有关更多信息,请参阅 为连接器设置配置选项

Spark(数据块):
  • 账户名称:Account URL for Snowflake account

  • 账户定位器:Account Locator URL for Snowflake account

有关更多信息,请参阅 在 Databricks 中为 Spark 配置 Snowflake

Spark (Qubole):
  • 账户名称:将 Host Address 字段值设置为 orgname-account_name.snowflakecomputing.cn

  • 账户定位器:将 Host Address 字段值设置为 account_locator_with_additional_segments.snowflakecomputing.cn

有关更多信息,请参阅 在 Qubole 中配置 Snowflake for Spark

PHP:
  • 账户名称:

    • ACCOUNT 参数值设置为 orgname-account_name

    • 将所有区域的 REGION 参数值留空。

  • 账户定位器:

    • ACCOUNT 参数值设置为 account_locator

    • 如果 Snowflake 账户 us-west 区域,请设置 REGION 参数值。

有关更多信息,请参阅 连接到 Snowflake 数据库 (https://github.com/snowflakedb/pdo_snowflake/blob/master/README.rst#connecting-to-the-snowflake-database)。

SQLAchemy:
  • 账户名称:snowflake://user_login_name:password@orgname-account_name

  • 账户定位器:snowflake://user_login_name:password@account_locator_with_additional_segments

有关更多信息,请参阅 将 Snowflake SQLAlchemy 工具包与 Python Connector 结合使用

使用 SQL 语句查找账户标识符

要获取账户标识符的 organization_name-account_name 表单,请执行以下 SQL 命令:

SELECT CURRENT_ORGANIZATION_NAME() || '-' || CURRENT_ACCOUNT_NAME();
Copy

要获取账户标识符的 账户定位器 表单,请执行以下 SQL 命令:

SELECT CURRENT_ACCOUNT();
Copy

其他配置步骤

以下主题涵盖关于配置连接的特定领域:

语言: 中文