新手在這裏試圖使用python來做一些數據庫分析。我不斷收到錯誤: 「錯誤:找不到Oracle軟件安裝」安裝CX_oracle時(通過easy_install)。「錯誤:無法找到Oracle軟件安裝」嘗試安裝cx_Oracle
問題是我沒有在我的本地機器上的oracle,我試圖用python連接到主oracle服務器。我已經設置了另一個程序來做到這一點(visualdb),我有一個.jar文件,我用作驅動程序,但我不知道如何在這種情況下使用它。
有什麼建議嗎?
新手在這裏試圖使用python來做一些數據庫分析。我不斷收到錯誤: 「錯誤:找不到Oracle軟件安裝」安裝CX_oracle時(通過easy_install)。「錯誤:無法找到Oracle軟件安裝」嘗試安裝cx_Oracle
問題是我沒有在我的本地機器上的oracle,我試圖用python連接到主oracle服務器。我已經設置了另一個程序來做到這一點(visualdb),我有一個.jar文件,我用作驅動程序,但我不知道如何在這種情況下使用它。
有什麼建議嗎?
不要使用easy_install或pip,因爲安裝腳本沒有自動設置,所以它們在安裝cx_Oracle時並不能很好地工作,因爲有許多環境依賴性。您需要獲得一個oracle客戶端驅動程序,其中最快的找到即時客戶端。然後將ORACLE_HOME和PATH指向驅動程序的安裝位置,然後安裝cx_Oracle本身。之後你應該很好。
看到:easy_install cx_Oracle (python package) on Windows
的問題是有關Windows,但得到的答覆包含在* nix信息。
我安裝了cx_Oracle
,但我還必須安裝一個Oracle客戶端才能使用它(cx_Oracle
模塊只是Python中與Oracle客戶端接口的一種常見和pythonic方式)。因此您必須將變量ORACLE_HOME
設置爲您的Oracle客戶機文件夾(例如,在Unix上:通過一個外殼;例如:在Windows上:如果在配置面板的環境變量中不存在,則創建一個新變量)。您的文件夾$ORACLE_HOME/network/admin
(在Windows上爲%ORACLE_HOME%\network\admin
)是您要放置tnsnames.ora
文件的位置。
我在安裝64位Oracle客戶端時試圖安裝32位版本時收到此消息。
對我有用:重新安裝python 64位(由於某種原因有32),安裝cx_Oracle(64位版本)與Windows安裝程序,它的工作完美。
我跟着這link指示,它爲我工作。
下載Oracle基本/從SDK:
mkdir /Users/<username_here>/oracle
mv /Users/<username_here>/Downloads/instantclient-*
/Users/<username_here>/oracle
cd /Users/<username_here>/oracle
unzip instantclient-basic-macos.x64-11.2.0.3.0.zip
unzip instantclient-sdk-macos.x64-11.2.0.3.0.zip
cd instantclient_11_2/sdk
unzip ottclasses.zip
cd ..
cp -R ./sdk/* .
cp -R ./sdk/include/* .
ln -s libclntsh.dylib.11.1 libclntsh.dylib
ln -s libocci.dylib.11.1 libocci.dylib
vim ~/.bash_profile (and below to bash_profile)
export ORACLE_HOME=/Users/<username_here>/oracle/instantclient_11_2
export DYLD_LIBRARY_PATH=$ORACLE_HOME
export LD_LIBRARY_PATH=$ORACLE_HOME
pip install cx_Oracle
在此之後,如果你得到這樣的錯誤:
1):庫未加載:
/ade/b/3071542110/oracle/rdbms/lib/libclntsh.dylib.11。1
你必須:
sudo mkdir -p /ade/b/3071542110/oracle/rdbms/lib/
cd /ade/b/3071542110/oracle/rdbms/lib/
sudo ln -s /opt/oracle/instantclient/libclntsh.dylib.11.1 libclntsh.dylib.11.1
下載Oracle客戶端:http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html
例如:Oracle的instantclient12.2-基本-12.2.0.1.0 -1.x86_64.rpm
Install外星人:
sudo apt-get install alien
安裝在Ubuntu系統中的RPM:
sudo alien -i oracle-instantclient12.2-basic-12.2.0.1.0-1.x86_64.rpm
添加到環境變量
vim ~/.bashrc export ORACLE_HOME=/usr/lib/oracle/12.2/client64/lib/ export LD_RUN_PATH=/usr/lib/oracle/12.2/client64/lib:$LD_RUN_PATH source ~/.bashrc sudo ln -s /usr/lib/oracle/12.2/client64 $ORACLE_HOME/include
pip install cx-Oracle