2012-11-05 14 views
11

Newbie tutaj próbuje użyć Pythona do analizy bazy danych. Wciąż dostaję błąd: "Błąd: nie mogę zlokalizować instalacji oprogramowania Oracle" Podczas instalacji CX_oracle (via easy_install)."Błąd: nie można zlokalizować instalacji oprogramowania Oracle" Podczas próby zainstalowania cx_Oracle

Problem polega na tym, że nie mam wyroczni na mojej lokalnej maszynie, próbuję użyć Pythona do połączenia z głównym serwerem Oracle. Mam do tego inny program do tego (visualdb) i miałem plik .jar, którego użyłem jako sterownika, ale nie jestem pewien jak go użyć w tym przypadku.

Wszelkie sugestie?

Odpowiedz

8

Nie używaj easy_install lub pip, nie działają one bardzo dobrze przy instalacji cx_Oracle, ponieważ istnieje szereg zależności środowiskowych, których skrypty instalacyjne nie ustawiają się automatycznie. Musisz zdobyć klienta klienckiego Oracle, którego najszybszym jest InstantClient. Następnie wskaż swój ORACLE_HOME i PATH w miejscu instalacji sterowników i zainstaluj samo cx_Oracle. Powinieneś być dobry, aby iść dalej.

patrz: easy_install cx_Oracle (python package) on Windows

Pytanie jest o oknach, ale odpowiedź zawiera informacje na * nix.

2

Zainstalowałem cx_Oracle, ale musiałem także zainstalować klienta Oracle, aby go użyć (moduł cx_Oracle jest tylko pospolitym i pythonic sposobem na interfejs z klientem Oracle w Pythonie).

Musisz więc ustawić zmienną ORACLE_HOME na swój folder klienta Oracle (na Unix: na przykład przez powłokę, w systemie Windows: utwórz nową zmienną, jeśli nie istnieje w Zmiennych środowiskowych w Panelu konfiguracji). Twój folder $ORACLE_HOME/network/admin (%ORACLE_HOME%\network\admin w systemie Windows) to miejsce, gdzie możesz umieścić swój plik tnsnames.ora.

1

Dostałem tę wiadomość, gdy próbowałem zainstalować wersję 32-bitową, mając zainstalowany 64-bitowy klient Oracle.

Co sprawdziło się dla mnie: reinstalowany python z 64-bitowym (z jakichś powodów 32), zainstalowany cx_Oracle (wersja 64-bitowa) z instalatorem Windows i działał idealnie.

1

Postępowałem zgodnie z instrukcjami link i to zadziałało.

Pobierz Oracle Basic/SDK od:

Oracle Instant Client Basic

Oracle Instant Client 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 

po tym, gdy pojawi się błąd jak:

1): Biblioteka nie załadowany:
/ade/b/3071542110/oracle/rdbms/lib/libclntsh.dylib.11.1

trzeba: Client

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 
0

Instalacja Oracle

  1. Pobierz Oracle Client: http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html

    Przykład: Oracle instantclient12.2-basic-12.2.0.1.0 -1.x86_64.rpm

  2. Zainstaluj Alien:

    sudo apt-get install alien

  3. zainstalować RPM w systemie Ubuntu:

    sudo alien -i oracle-instantclient12.2-basic-12.2.0.1.0-1.x86_64.rpm

  4. Dodaj do zmiennych środowiskowych

    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

Fina lly

pip install cx-Oracle

Powiązane problemy