2017-02-16 63 views
0

我想在AWS Lambda中導入和使用python的dataset包。數據集包是關於MySQL連接並執行查詢的。但是,當我嘗試導入它時,出現錯誤。如何使用AWS Lambda中另一種語言編寫的包?

「libmysqlclient.so.18:無法打開共享對象文件:沒有這樣的文件或目錄」

我認爲這個問題是因爲MySQL客戶端軟件包是必要的。但是,AWS Lambda機器中沒有MySQL軟件包。

如何添加第三方程序以及如何鏈接?

+0

你必須帶着你所有的依賴。所以你導入的軟件包也應該包含mysql軟件包。 –

回答

0

你應該在你的λ文件夾中安裝你的包:

$ pip install YOUR_MODULE -t YOUR_LAMBDA_FOLDER

,然後在一個zip壓縮您的整個目錄中你拉姆達上傳。

0

你所要做的就是包含lambda包所需的二進制文件。

您需要利用pip並創建一個隔離的環境。您上傳到lambda的zip需要包含python2.7/site-packages(與pip一起安裝的)。

現在有極端的情況與os相關的依賴關係。 這有一個棘手的解決方案。 在這些情況下,您必須生成一個amazon linux ec2實例,以便構建/獲取這些依賴關係並將其與lambda打包。 一旦你的lambda打包,你可以關閉ec2實例。 如果virtualenv不夠,請檢查this指南。

相關問題