-
python3 cx_Oracle 설치Python 2017. 5. 17. 21:57
파이썬으로 오라클 접속해야하는 상황이라 이것저것 해보다가 갑자기 된 상황이라
왜 된건지.... -_-;; 암튼 일단 실제 적용했던것을 기록으로 남김다.
OS : 윈도우 10 64bit
1. 오라클 인스턴트 클라이언트 설치
basic 이랑 sqlplus 2개 다운받아서
C:\Oracle\instantclient_11_2 여기 폴더에 압축을 풀어놓는다.
그리고 아래와 같이 환경변수를 설정한다.
2. cx_Oracle 라이브러리 설치
https://pypi.python.org/pypi/cx_Oracle/5.3
pip 로 설치할려고 하니 다음과 같은 에러 ㅠㅠ
import cx_Oracle con = cx_Oracle.connect('user/비번@서버아이피:1521/오라클SID') cur = con.cursor() cur.execute('select * from table_name ' ') for result in cur: print(result) cur.close() con.close()
17년 5월 18일 이번엔 ubuntu 설치하고 환경 설정 시작!
1. 파이썬3.6 설치 완료 링크
2. 라이브러리 컴파일 해야하니 컴파일시 필요한 필수 라이브러리 업데이트
#> sudo apt-get install build-essential unzip python-dev libaio-dev
3. 오라클 instant client 다운로드 링크
- instantclient-basic-linux ,
- instantclient-sdk-linux
위 2개 라이브러리가 필요하다고 하나 난 sqlplus 까지 다운받았다.
압축을 풀면 모두
instantclient_11_2 해당 폴더에 모두 파일이 생기고
4. 환경변수 선언
/etc/profile 에 환경변수로 아래와 같이 선언해둔다.
export ORACLE_HOME=/oracle/instantclient_11_2
export NLS_LANG=American_America.KO16KSC5601;
export TNS_ADMIN=$ORACLE_HOME/network/admin
export PATH=$PATH:$ORACLE_HOME:/bin:/usr/bin/java/bin:/bin:/usr/bin:/usr/sbin:/etc:/usr/etc
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME:/lib:/usr/lib
5. 라이브러리 파일 링크
해당 파일이 컴파일시 필요하기 때문에 미리 링크해둔다. 링크 안하면 해당 so 파일 없다고 컴파일 에러 발생
6. 파일추가 <-- 이건 왜 하는지 잘 모르겠다.
vi /etc/ld.so.conf.d/oracle.conf 이렇게 파일을 생성해서 내용은 아래 1줄 추가
sudo ldconfig
이제 환경변수 셋팅한거 읽어들이고 . 안하면 아래 처럼 에러!
환경변수 읽어들이고 다시 실행하면 성공!
실제로 cx_Oracle import 해서 에러 발생 안하는지 확인
But! 난 3.6 에서 cx_Oracle import 가 되어야 한다.
그래서 apt-get install python3-pip
이렇게 했더니3.5 환경으로 설치가 된다.
아마도 pip3 가 현재 3.5 환경을 바라보고 있어서 그런듯하다.
음... 3.6으로 바꾸고 싶으면 어찌해야하나....
역시 구글링으로 의외로 쉽게 검색
단순히 pip 명령줄 앞에 python3.6 -m 이렇게만 명시하면 되는것이였다.
#> python3.6 -m pip install cx_Oracle
다만 그전에 apt-get install python3.6-dev 이건 먼저 해야 컴파일 에러가 생기지 않는다.
안하면 위와 같은 에러 !
성공 ~~ 냐하하하하하~~~
'Python' 카테고리의 다른 글
CentOS 6.9 에 Python 3.6 설치하기 (0) 2019.09.12 tesseract-ocr pytesseract 설치 (3) 2017.05.19 ubuntu 에 Python3 설치 (0) 2017.05.16 파이썬 + Django 설치 (0) 2017.04.29