在下面的代码中,我使用SQL Server用户ID和密码连接到数据库。
但是在连接活动目录时出现错误。
请提出一些解决方案,以使用Active Directory身份验证在Azure Databricks中连接Azure SQL Server DB。
到目前为止,我已经可以使用JDBC连接进行连接:
sql_url="jdbc:sqlserver://kkk-server.database.windows.net:1433;database=database;user=UserName;password=Password"
答案 0 :(得分:0)
根据Azure数据块文档Connecting to Microsoft SQL Server and Azure SQL Database with the Spark Connector:
用于SQL Server和Azure SQL数据库的Spark连接器还支持Azure Active Directory(AAD)身份验证。它允许您使用AAD帐户从Azure Databricks安全地连接到Azure SQL数据库。
示例:Read from Azure SQL Database or SQL Server:
import com.microsoft.azure.sqldb.spark.config.Config
import com.microsoft.azure.sqldb.spark.connect._
val config = Config(Map(
"url" -> "kkk-server.database.windows.net:1433",
"databaseName" -> "MyDatabase",
"dbTable" -> "dbo.Clients",
"user" -> "AD-account",
"password" -> "xxxxxxxx",
"connectTimeout" -> "5", //seconds
"queryTimeout" -> "5" //seconds
))
val collection = spark.read.sqlDB(config)
collection.show()
用您的AD帐户名替换用户。
希望这会有所帮助。