問題
使用時發生下列錯誤之一皮普安裝pyodbc圖書館。
. lang。RuntimeException:安裝失敗,信息:收集pyodbc
“圖書館安裝失敗是由於缺失的依賴關係。sasl和thrift_sasl是可選依賴sasl或Kerberos支持”
導致
雖然sasl和thrift_sasl是可選依賴SASL或Kerberos支持,他們需要禮物嗎pyodbc安裝成功。
解決方案
集群級init腳本方法
你可以把這些命令為一個init腳本,並將其附加到集群。這將確保pyodbc的依賴庫安裝在集群開始之前。
- 創建基礎目錄存儲中的init腳本,如果基礎目錄不存在。在這裏,使用dbfs: /磚/ <目錄>作為一個例子。
% sh dbutils.fs.mkdirs (“dbfs: /磚/ <目錄> /”)
- 創建腳本並將其保存到一個文件。
% sh dbutils.fs.put (“dbfs: /磚/ <目錄> /龍卷風。sh”、“”“# !/bin/bash pip列表| egrep”thrift-sasl | sasl的pip安裝,升級節儉dpkg - l | egrep”thrift_sasl | libsasl2-dev | gcc | python-dev“sudo apt-get - y安裝unixodbc-dev libsasl2-dev gcc python-dev”“”,真的)
- 檢查腳本的存在。
% python顯示器(dbutils.fs.ls (“dbfs: /磚/ <目錄> / tornado.sh”))
- 在集群配置頁麵,單擊高級選項切換。
- 在頁麵的底部,單擊Init腳本選項卡。
- 在目的地下拉,選擇DBFS,提供這個腳本文件路徑,然後單擊添加。
- 重新啟動集群。
關於集群級init腳本的更多細節,請參閱集群級init腳本(AWS|Azure|GCP)。
筆記本的方法
- 在一個筆記本,檢查的版本節儉升級到最新版本。
% sh pip列表| egrep”thrift-sasl | sasl的pip安裝,升級節儉
- 確保安裝依賴包。
% sh dpkg - l | egrep”thrift_sasl | libsasl2-dev | gcc | python-dev”
- 安裝nnixodbc在安裝之前pyodbc。
% sh sudo apt-get - y安裝unixodbc-dev libsasl2-dev gcc python-dev