Computer >> 컴퓨터 >  >> 문제 해결 >> Linux

ModuleNotFoundError 수정:Python에서 MySQLdb 모듈 누락

MySQL은 Python에서 사용하기에 가장 효율적인 것 중 하나입니다. Python 모듈 "mysqldb"를 사용하면 Python을 MySQL에 연결할 수 있습니다. 모듈이 시스템에 설치되어 있지 않으면 "'mysqldb'라는 모듈이 없습니다."라는 오류가 발생합니다.

ModuleNotFoundError:MySQLdb라는 이름의 모듈이 없습니다. 수정

이 게시물에서는 "mysqldb라는 모듈이 없습니다." 오류를 해결하기 위한 가능한 원인과 해결책을 다룰 것입니다.

왜 이런 오류가 발생하나요?

Python 모듈은 단일 패키지 또는 여러 패키지에 의존합니다. "mysqldb" 관련 패키지 중 하나가 설치되지 않은 상태에서 모듈을 가져오려고 하면 "mysqldb라는 모듈이 없습니다"라는 오류가 발생합니다.

여기 스니펫은 가져오려고 하는데 오류가 발생했음을 보여줍니다.

모델을 찾을 수 없음오류

해결책:“MySQLdb” 설치

“MySQLdb” 모듈은 Python 기반 관리자인 PIP를 통해 사용할 수 있습니다. PIP가 시스템에 설치되어 있는지 확인하십시오. 완전한 솔루션은 다음 단계로 설명됩니다:

1단계:PIP 설치

PIP는 다음 명령 세트를 사용하여 Linux에 설치할 수 있습니다:

$ sudo apt install python3-pip           #For Debian and Ubuntu-Based Distributions
$ sudo yum install python3-pip           #For CentOS7/RHEL
$ sudo dnf install python3-pip           #For Fedora/CentOS8
$ sudo pacman -S python3-pip             #For Arch-Based Distributions
python3-pip 설치

Python2에 PIP를 설치하려면 패키지 이름 "python-pip"를 사용해야 합니다.

2단계:“mysqlclient” 패키지 설치

"MySQLdb" 모듈은 서로 다른 PIP 패키지를 가져오기 전에 설치해야 하는 두 개의 패키지와 연결되어 있습니다. 첫 번째 패키지는 Python이 MySQL에 연결할 수 있게 해주는 "mysqlclient"입니다.

이 패키지가 없기 때문에 모듈을 가져올 수 없습니다. "mysqlclient" 패키지는 다음과 같이 Linux에 설치할 수 있습니다:

$ pip3 install mysqlclient
MySQL 패키지 설치

"mysqlclient"를 설치하는 동안 오류가 발생할 수 있습니다.

가 없기 때문입니다.

Python 개발 패키지를 사용하여 시스템에 "mysqlclient" 패키지를 내장합니다. 이 패키지 세트는 다음 명령을 사용하여 설치할 수 있습니다:

$ sudo apt install python3-dev default-libmysqlclient-dev build-essential
$ sudo yum install python3-dev default-libmysqlclient-dev build-essential
$ sudo dnf install python3-dev default-libmysqlclient-dev build-essential

참고: "apt", "yum" 및 "dnf"는 Debian/Ubuntu, CentOS/RHEL 및 Fedora 기반 배포판을 의미합니다.

MySQL 빌드 필수사항 설치

mysqlclient를 설치한 후 모듈 import를 시도해 보세요. 오류가 계속되면 계속 진행하세요.

3단계:“mysql-connector-python” 설치

이 패키지를 사용하면 Python이 MySQL 데이터베이스에 연결할 수 있습니다. 다음 PIP 기반 명령을 사용하여 설치할 수 있습니다:

$ sudo pip3 install mysql-connector-python
Python을 MySQL DB에 연결

Python2용 PIP를 사용하는 경우 패키지 관리자 이름 "pip3"을 "pip2"로 바꾸세요.

4단계:솔루션 확인

이제 전체 이름을 사용하여 모듈을 가져옵니다:

>>> import MySQLdb
MySQLdb 가져오기

스크린샷은 모듈을 Python 환경으로 가져온 것을 보여줍니다.

사용자가 이 모듈을 가져오는 데 필요한 패키지가 없는 상태에서 가져오려고 하면 "mysqldb라는 모듈이 없습니다"라는 오류가 발생합니다. 시스템에 "mysqlclient" 패키지를 설치하면 오류를 수정할 수 있습니다. 그러나 아직 수정되지 않은 경우에는 PIP를 사용하여 “mysql-connector-python” 패키지를 설치하십시오. 이 게시물에는 Linux에서 "MySQLdb" 모듈 오류가 발생하는 이유와 해결 방법이 나열되어 있습니다.

저자 소개

ModuleNotFoundError 수정:Python에서 MySQLdb 모듈 누락

무하마드 주비안

Muhammad Zubyan은 7년 이상의 폭넓은 경험을 보유한 공인 Google IT 지원 전문가입니다. 그는 1500대가 넘는 컴퓨터에서 작업하면서 Windows 관련 문제 및 오류의 복잡한 근본 원인을 감지하고 해결할 수 있는 귀중한 통찰력을 얻었습니다. 그는 수석 편집자로 Appuals를 관리하는 것 외에도 현재 게이머와 일반 사용자 모두를 만족시키는 자신만의 게임 최적화 프로그램을 개발하고 있습니다.