簡體   English   中英

如何在 Linux Azure Web App 上安裝和配置 Oracle Instant Client

[英]How to install and configure Oracle Instant Client on a Linux Azure Web App

為了在 Linux Web App Service 上安裝 Oracle Instant Client 文件,我已經苦苦掙扎了好幾天。 我在上面運行 Python/Flask web 應用程序,我想使用需要 Oracle Instant Client 的 cx_Oracle 庫。 這是我在另一台服務器上完成的,但我似乎無法在 Azure Web 應用程序服務上復制/配置它。 目前我不斷收到錯誤消息: "Cannot locate a 64-bit Oracle Client library: "libaio.so.1: cannot open shared object file: No such file or directory".

我做了什么:從此鏈接下載了 instantclient_21_1(64 位),然后將其解壓縮

cd /home/site/wwwroot/
wget https://download.oracle.com/otn_software/linux/instantclient/211000/instantclient-basic-linux.x64-21.1.0.0.0.zip
unzip instantclient-basic-linux.x64-21.1.0.0.0.zip

我用apt-get install libaio1

然后我需要將 LD_LIBRARY_PATH 設置為 home/site/wwwroot/instantclient_21_1。

我嘗試echo export LD_LIBRARY_PATH=/home/site/wwwroot/instantclient_21_1 >> ~/.bashrc但它不起作用,因為 bashrc 無法保存在 Azure Web 應用程序中(“'/home' 之外的任何數據都不會保留”)。

我按照此鏈接中所述創建了一個 applicationHost.xdt 文件,但它不起作用。

我去了 Azure Web App Settings > Configuration > Application Settings,然后將 LD_LIBRARY_PATH 設置為 /home/site/wwwroot/instantclient_21_1 但它沒有用。

最后在我的 Python 腳本中,我嘗試了cx_Oracle.init_oracle_client(lib_dir='/home/site/wwwroot/instantclient_21_1')並且我仍然收到相同的錯誤消息。

誰能幫忙? 非常感謝!

我知道我遲到了,但如果有人像我一樣為此苦苦掙扎了一個星期

解決方案非常簡單。

從問題中的鏈接下載 Oracle 即時客戶端並將其解壓縮到您喜歡的任何位置(不是天藍色)。

通過Kudu界面將解壓文件夾中的所有.dll文件移動到web應用程序的python文件夾中,你就可以go了

如果您有問題,請點擊鏈接。

cx_Oracle 錯誤。 DPI-1047:找不到 64 位 Oracle 客戶端庫

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM