旧版 Databricks JDBC 驱动程序

注意

本文适用于 Databricks JDBC 驱动程序版本 2.6.22 及更低版本。 有关最新的 Databricks JDBC 驱动程序版本 3 及更高版本,请参阅 Databricks JDBC 驱动程序

若要使用 JDBC 连接 URL 通过 Azure Databricks 个人访问令牌进行身份验证,请设置以下属性集合,将 <personal-access-token> 替换为你的 Azure Databricks 个人访问令牌:

jdbc:spark://<server-hostname>:443;httpPath=<http-path>;transportMode=http;SSL=1;UID=token;PWD=<personal-access-token

Databricks 建议使用最安全的可用身份验证流。 本文中所述的身份验证流存在其他流中不存在的风险。 仅当其他更安全的流(如托管标识)不可行时,才应使用此流。

若要使用 Java 代码通过 Azure Databricks 个人访问令牌进行身份验证,请设置以下属性集合,将 <personal-access-token> 替换为你的 Azure Databricks 个人访问令牌:

// ...
String url = "jdbc:spark://<server-hostname>:443;httpPath=<http-path>;transportMode=http;SSL=1";
Properties p = new java.util.Properties();
p.put("UID", "token");
p.put("PWD", "<personal-access-token>");
// ...
DriverManager.getConnection(url, p);
// ...

若要使用 JDBC 连接 URL 通过 Microsoft Entra ID 令牌进行身份验证,请设置以下属性集合,将 <microsoft-entra-id-token> 替换为 Microsoft Entra ID 令牌:

 jdbc:spark://<server-hostname>:443;httpPath=<http-path>;transportMode=http;SSL=1;AuthMech=11;Auth_Flow=0;Auth_AccessToken=<microsoft-entra-id-token>

若要使用 Java 代码通过 Microsoft Entra ID 令牌进行身份验证,请设置以下属性集合,将 <microsoft-entra-id-token> 替换为 Microsoft Entra ID 令牌:

String url = "jdbc:spark://<server-hostname>:443;httpPath=<http-path>;transportMode=http;SSL=1";
Properties p = new java.util.Properties();
p.put("AuthMech", "11");
p.put("Auth_Flow", "0");
p.put("Auth_AccessToken", "<microsoft-entra-id-token>");
// ...
DriverManager.getConnection(url, p);
// ...
  • 旧版 Databricks JDBC 驱动程序需要设置 transportMode 和 SSL 属性。 Databricks 建议将这些值分别设置为 http1
  • 有关可以根据需要调整的完整 Java 代码示例,请参阅 Databricks JDBC 驱动程序(Simba)的身份验证设置的开头。
  • 若要获取 <server-hostname><http-path> 的值,请参阅以下过程。

若要获取 Azure Databricks 群集的连接详细信息,请执行以下操作:

  1. 登录到你的 Azure Databricks 工作区。

  2. 在边栏中,单击“计算”。

  3. 在可用群集列表中,单击目标群集的名称。

  4. 在“配置”选项卡上,展开“高级选项”。

  5. 单击“JDBC/ODBC”选项卡

  6. 复制所需的连接详细信息,例如服务器主机名、端口和 HTTP 路径。

若要获取 Databricks SQL 仓库的连接详细信息,请执行以下操作:

  1. 登录到你的 Azure Databricks 工作区。

  2. 在边栏中单击“SQL”>“SQL 仓库”。

  3. 在可用仓库列表中,单击目标仓库的名称。

  4. 在“连接详细信息”选项卡上,复制所需的连接详细信息,例如服务器主机名、端口和 HTTP 路径

若要将驱动程序用于 Azure Databricks 群集,在连接或重启群集时需要以下两种权限才能调用用户或服务主体:

  • “可连接到”权限,用于连接到正在运行的群集。
  • “可重启”权限。在连接时,如果群集处于已终止状态,将使用此权限来自动触发群集启动。

若要将驱动程序用于 Databricks SQL 仓库,调用用户或服务主体需要“可使用”权限。 Databricks SQL 仓库停止后会自动启动。

注意

在 DirectQuery 模式下使用 Microsoft Power BI 时,建议使用 Databricks SQL 仓库