旧版 Databricks JDBC 驱动程序

本页介绍旧 Databricks JDBC 驱动程序版本 2.6.22 及更低版本的身份验证设置。 有关版本 3 及更高版本,请参阅 Databricks JDBC 驱动程序

警告

使用可用的最安全的身份验证流。 此页上的身份验证方法存在其他流中不存在的风险。 仅当更安全的选项(如托管标识)不可用时,才使用这些方法。

要求

旧驱动程序需要属性transportModeSSL。 分别设置为http1

有关 <server-hostname><http-path> 值,请参阅此页面末尾的过程。 有关完整的 Java 示例,请参阅 Databricks JDBC 驱动程序(Simba)的身份验证设置

个人访问令牌身份验证

连接 URL

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

<personal-access-token> 替换为您的 Azure Databricks 个人访问令牌。

Java

// ...
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);
// ...

Microsoft Entra ID 令牌身份验证

使用 Microsoft Entra ID 令牌进行身份验证。

连接 URL

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

<microsoft-entra-id-token> 替换为您的 Microsoft Entra ID 令牌。

Java

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);
// ...

若要获取 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 仓库