Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- Baekjoon
- SW Expert Academy
- Docker
- ubuntu
- 더현대서울 맛집
- 우분투
- 맥북
- 데이콘
- Kaggle
- programmers
- 백준
- 금융문자분석경진대회
- ChatGPT
- gs25
- hackerrank
- 캐치카페
- 편스토랑 우승상품
- 코로나19
- 프로그래머스 파이썬
- Git
- 파이썬
- PYTHON
- Real or Not? NLP with Disaster Tweets
- 편스토랑
- 자연어처리
- AI 경진대회
- github
- leetcode
- 프로그래머스
- dacon
Archives
- Today
- Total
솜씨좋은장씨
[Python] mac OS 에서 sqlalchemy + cx_Oracle 활용하여 Oracle DB 연결 시 발생하는 sqlalchemy.exc.DatabaseError: (cx_Oracle.DatabaseError) DPI-1047: Cannot locate a 64-bit Oracle Client library 해결 방법 본문
Programming/Python
[Python] mac OS 에서 sqlalchemy + cx_Oracle 활용하여 Oracle DB 연결 시 발생하는 sqlalchemy.exc.DatabaseError: (cx_Oracle.DatabaseError) DPI-1047: Cannot locate a 64-bit Oracle Client library 해결 방법
솜씨좋은장씨 2022. 3. 1. 13:26728x90
반응형
이번에 진행하는 작업에서 Oracle DB를 사용하여 sqlalchemy 라이브러리와 cx_Oracle 라이브러리를 활용하여
DB에 연결을 시도하였는데 아래와 같은 에러가 발생하였습니다.
sqlalchemy.exc.DatabaseError: (cx_Oracle.DatabaseError) DPI-1047:
Cannot locate a 64-bit Oracle Client library: "dlopen(libclntsh.dylib, 0x0001):
tried: 'libclntsh.dylib' (no such file), '/usr/local/lib/libclntsh.dylib' (no such file),
'/usr/lib/libclntsh.dylib' (no such file), '/Users/donghyunjang/API/libclntsh.dylib' (no such file)".
See https://cx-oracle.readthedocs.io/en/latest/user_guide/installation.html for help
(Background on this error at: http://sqlalche.me/e/13/4xp6)
이를 해결하는 방법은 다음과 같습니다.
👨🏻💻 해결 방법
먼저 아래의 링크로 이동하여 필요한 파일을 다운로드 받습니다.
https://www.oracle.com/kr/database/technologies/instant-client/macos-intel-x86-downloads.html
그 다음 다운로드 받은 파일을 실행합니다.
실행하면 /Volumes 위치에 instantclient-basic-macos~ 라는 디렉토리가 생성됩니다.
그러면 터미널을 열고
$ cd /Volumes/instantclient-basic-macos.x64-19.8.0.0.0dbru/
해당 위치로 이동합니다.
$ ./install_ic.sh
그 다음 위의 명령어로 해당 디렉토리 안에있는 스크립트를 실행합니다.
/Users/donghyunjang/Downloads/instantclient_19_8
Using existing dir: /Users/donghyunjang/Downloads/instantclient_19_8...
Copying /Volumes/instantclient-basic-macos.x64-19.8.0.0.0dbru files ...
그럼 위와 같은 내용이 나오면서 실행됩니다.
여기까지 했다면 이제 파이썬 코드로 가서
import cx_Oracle
cx_Oracle.init_oracle_client(lib_dir="/Volumes/instantclient-basic-macos.x64-19.8.0.0.0dbru")
위와 같이 cx_Oracle을 import 한뒤 init_oracle_client에 아까 생성된 디렉토리의 주소를 붙여넣습니다.
읽어주셔서 감사합니다.
'Programming > Python' 카테고리의 다른 글
[Python] pyodbc를 활용하여 Tibero 연결 시 발생하는 TBR-15146: PSM compilation error 해결 방법 (0) | 2022.03.27 |
---|---|
[Python] opencv-python 설치 시 Building wheel for opencv-python (PEP 517) 과정이 끝나지 않을 때 해결 방법! (1) | 2022.03.20 |
[Python] 파이썬의 특정 객체가 iterable 한지 확인하는 방법! (2) | 2022.02.08 |
[Python] datetime의 strptime을 활용하여 시간과 시간 사이의 차이 구하는 방법 (0) | 2022.01.19 |
[Python] error: invalid command 'bdist_wheel' 해결 방법 (0) | 2022.01.16 |
Comments