-
파이썬 32비트 환경에서 MYSQL 사용하기:DLL load failed while import _sqlite3 대응금융퀀트/프로그램기초 2023. 11. 28. 07:14반응형
32비트 가상환경 만들기 및 필요라이브러리 설치
아나콘다-파이썬 사용자가 32비트 환경을 구현하기 위해서 굳이 32비트용 아나콘다를 다운로드할 필요는 없다. 아나콘다 프롬프트에서 "set CONDA_FORCE_32BIT=1" 명령어로 환경을 32비트로 만들어 준 뒤에 가상환경을 만들어서 activate 시켜주면 32비트 환경에서 작업을 할 수 있다.(자세한 내용은 [키움API]아나콘다-파이썬 가상환경 만들기 참조)
보통은 증권사 API 같은 것들이 32비트 환경에서 구현되어 있어서 가상환경을 만들어서 작업한다. 그런데 대량의 시장 데이터를 이용하는 증권사 API를 사용할 때 데이터베이스 작업도 필수적이다. 보통은 아래와 같이 sqlalchemy와 pymysql을 설치해서 데이터베이스 작업을 한다.
"DLL load failed while import _sqlite3: 지정된 모듈을 찾을 수 없습니다.": SQLite 직접 다운로드를 통한 해결
아래 예시 코드와 같이 라이브러리를 입력하고 관련 코드를 작성하여 DB 작업을 하면 된다.
import pymysql import sqlalchemy as db import pandas as pd pymysql.install_as_MySQLdb() (생략)...
그런데 재수가 없으면 코드를 실행할 때 아래와 같은 에러 메시지를 만나게 된다.
이 에러는 가상환경 구성 폴더의 DLL 파일 목록에 sqlite3.dll 파일이 없어서 생기는 오류이다. (해당 오류가 뜬다고 설치된 라이브러리들의 버전을 강제로 올리면 가상환경을 지우고 다시 생성해야할 수도 있다.) 이 오류는 가상환경이 설치된 위치의 DLL 폴더에 (보통은 C:\Users\admin\anaconda3\envs\{내 가상환경 명}\DLLs) sqlite3.dll 파일을 넣어주면 쉽게 해결된다.
그렇다고 단순히 다른 가상환경의 sqlite3.dll 파일처럼 아무 파일이나 복사해서 넣어주면 안 된다. SQLite 공식홈페이지(https://www.sqlite.org/index.html)에 가서 다운로드 메뉴를 누르고 현재 환경에 맞는 sqlite3.dll 파일을 다운로드해서 위에서 말한 경로에 넣어주어야 하는 것이다. 32비트 가상환경이고-윈도우 사용자라면 아래 그림 4에 표시한 32BIT DLL 파일을 잘 찾아서 다운 받은 뒤에 가상환경의 DLL 폴더에 넣으면 된다.
반응형'금융퀀트 > 프로그램기초' 카테고리의 다른 글
파이썬: 멀티쓰레딩(Threading)과 멀티프로세싱(multiprocessing) (0) 2024.03.16 파이썬 : 함수(Function), 클래스(Class), 모듈(Module), 패키지(Package) (0) 2024.01.31 파이썬 판다스(pandas) 데이터 합치기 concat&merge 활용 (0) 2023.06.15 (OpenAPI)ChatGPT OpenAPI 사용: 데이터 분석(KOSPI200지수 예측) (0) 2023.03.29 (OpenAPI)ChatGPT OpenAPI 사용: 기본활용 예제(python) (0) 2023.03.24