python - spark.read 在 Databricks 中给出 KrbException
问题描述
我正在尝试从 databricks 笔记本连接到 sql 数据库。以下是我的代码:
jdbcDF = spark.read \
.format("com.microsoft.sqlserver.jdbc.spark") \
.option("url", "jdbc:sqlserver://dbs-sdp-sql-dev.database.windows.net:1433;database=dm_test;encrypt=true;trustServerCertificate=false;hostNameInCertificate=*.database.windows.net;loginTimeout=30;Authentication=ActiveDirectoryIntegrated") \
.option("dbtable", "Cars") \
.option("Driver", "com.microsoft.sqlserver.jdbc.SQLServerDriver").load()
我收到错误:
IllegalArgumentException: KrbException: Cannot locate default realm
完整的跟踪是:
IllegalArgumentException Traceback (most recent call last)
<command-1799101041598361> in <module>
----> 1 jdbcDF = spark.read \
2 .format("com.microsoft.sqlserver.jdbc.spark") \
3 .option("url", "jdbc:sqlserver://dbs-sdp-sql-dev.database.windows.net:1433;database=dm_test;encrypt=true;trustServerCertificate=false;hostNameInCertificate=*.database.windows.net;loginTimeout=30;Authentication=ActiveDirectoryIntegrated") \
4 .option("dbtable", "Cars") \
5 .option("Driver", "com.microsoft.sqlserver.jdbc.SQLServerDriver").load()
/databricks/spark/python/pyspark/sql/readwriter.py in load(self, path, format, schema, **options)
208 return self._df(self._jreader.load(self._spark._sc._jvm.PythonUtils.toSeq(path)))
209 else:
--> 210 return self._df(self._jreader.load())
211
212 def json(self, path, schema=None, primitivesAsString=None, prefersDecimal=None,
/databricks/spark/python/lib/py4j-0.10.9-src.zip/py4j/java_gateway.py in __call__(self, *args)
1302
1303 answer = self.gateway_client.send_command(command)
-> 1304 return_value = get_return_value(
1305 answer, self.gateway_client, self.target_id, self.name)
1306
/databricks/spark/python/pyspark/sql/utils.py in deco(*a, **kw)
121 # Hide where the exception came from that shows a non-Pythonic
122 # JVM exception message.
--> 123 raise converted from None
124 else:
125 raise
IllegalArgumentException: KrbException: Cannot locate default realm
我尝试在集群上安装 python-krb5 但失败了。
我尝试在集群上安装 requests-kerberos==0.12.0 但失败了。
我正在关注以下教程:https ://docs.microsoft.com/en-us/sql/connect/spark/connector?view=sql-server-ver15
如何修复此错误?
解决方案
推荐阅读
- c# - 时间:2019-05-10 标签:c#socketThread
- sql - 子查询以提高性能和可维护性
- ios - 应用程序在初始启动时具有非常高的内存使用量,但如果它来自后台状态,使用量会下降到 1/10
- express - 将带有 Express 应用程序的 Next.js 部署到 Elastic Beanstalk (502)
- java - 如何编写一个小程序,其中屏幕跟踪用户迄今为止输入的最高数字
- php - 在控制器构造函数中初始化模型
- javascript - jQuery 和动态选项卡和数据
- javascript - 为什么会抛出 user.validPassword is not a function Err?
- linux - 如何让 Conda 找到 cc1plus?
- javascript - 无法在 React 中的 onClick 上切换类