django.core. 예외.잘못 구성됨:MySQLdb 모듈 로드 중 오류 발생:MySQLdb라는 이름의 모듈이 없습니다.
mysql을 위해 데이터베이스에 접속하려고 할 때 직면한 문제.제가 사용한 데이터베이스 설정도 알려드렸습니다.
Traceback (most recent call last):
File "manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/home/ar/Desktop/test/testprac/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 453, in execute_from_command_line
utility.execute()
File "/home/ar/Desktop/test/testprac/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 392, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/home/ar/Desktop/test/testprac/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 272, in fetch_command
klass = load_command_class(app_name, subcommand)
File "/home/ar/Desktop/test/testprac/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 77, in load_command_class
module = import_module('%s.management.commands.%s' % (app_name, name))
File "/home/arundhati/Desktop/test/testprac/local/lib/python2.7/site-packages/django/utils/importlib.py", line 35, in import_module
__import__(name)
File "/home/ar/Desktop/test/testprac/local/lib/python2.7/site-packages/django/core/management/commands/syncdb.py", line 8, in <module>
from django.core.management.sql import custom_sql_for_model, emit_post_sync_signal
File "/home/ar/Desktop/test/testprac/local/lib/python2.7/site-packages/django/core/management/sql.py", line 9, in <module>
from django.db import models
File "/home/ar/Desktop/test/testprac/local/lib/python2.7/site-packages/django/db/__init__.py", line 40, in <module>
backend = load_backend(connection.settings_dict['ENGINE'])
File "/home/ar/Desktop/test/testprac/local/lib/python2.7/site-packages/django/db/__init__.py", line 34, in __getattr__
return getattr(connections[DEFAULT_DB_ALIAS], item)
File "/home/ar/Desktop/test/testprac/local/lib/python2.7/site-packages/django/db/utils.py", line 93, in __getitem__
backend = load_backend(db['ENGINE'])
File "/home/ar/Desktop/test/testprac/local/lib/python2.7/site-packages/django/db/utils.py", line 27, in load_backend
return import_module('.base', backend_name)
File "/home/ar/Desktop/test/testprac/local/lib/python2.7/site-packages/django/utils/importlib.py", line 35, in import_module
__import__(name)
File "/home/ar/Desktop/test/testprac/local/lib/python2.7/site-packages/django/db/backends/mysql/base.py", line 17, in <module>
raise ImproperlyConfigured("Error loading MySQLdb module: %s" % e)
django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No module named MySQLdb
데이터베이스 설정:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
'NAME': 'ar_test_db', # Or path to database file if using
# The following settings are not used with sqlite3:
'USER': '',
'PASSWORD': '',
'HOST': '', # Empty for localhost through domain sockets or '127.0.0.1' for localhost through TCP.
'PORT': '', # Set to empty string for default.
}
}
도와주셔서 감사합니다!!
python mysql 패키지가 설치되어 있지 않은 것 같습니다.
pip install mysql-python
또는 (*nix 호스트에서) 가상 환경을 사용하지 않는 경우:
sudo pip install mysql-python
pip을 사용하여 mysqlclient를 설치하려고 하면 오류가 발생할 경우 mysql dev 라이브러리가 부족할 수 있습니다.다음을 실행하여 설치합니다.
apt-get install libmysqlclient-dev
mysqlclient 설치를 다시 시도합니다.
pip install mysqlclient
python-mysqldb - MySQL에 대한 Python 인터페이스를 설치해야 합니다.
★★를 해 보세요.
sudo apt-get install python-mysqldb
제 답변은 @Ron-E와 비슷하지만, 몇 가지 오류/정정이 더 있어서 Mavericks와 Python 2.7.6의 Mac OSX에 대한 단계를 아래에 두겠습니다.
Python mysql 패키지를 설치합니다(성공 메시지가 표시되면 다음 단계를 무시하십시오).
pip install mysql-python
하면, 「not found」라고 하는 에러가 됩니다.
과 같이 .
export PATH=$PATH:/usr/local/mysql/bin
1을 다시 하면 "error ' 1"이라는 새로운.
과 같이 .
export CFLAGS=-Qunused-arguments export CPPFLAGS=-Qunused-arguments
1단계를 다시 실행했더니 'Successfully installed mysql-python'이라는 성공 메시지가 떴습니다!
Mac OS X Mountain Lion에서 pycharm용 Django 개발 환경을 python, mysql, 속편 pro 어플리케이션으로 설정했을 때 이 스레드의 소유자와 동일한 오류가 발생하였습니다.그러나 Mac OS Mountain Lion x86_x64(MySql과 Python도 동일한 아키텍처여야 함)에서 python-mysqldb를 실행하고 있으며 pip 등의 모든 것을 이미 시도하고 있는 분들을 위한 답변입니다.이 문제를 해결하려면 , 다음의 순서에 따릅니다.
- 여기서 MySql for Python 다운로드
- 다운로드한 파일을 언타링합니다.터미널 창에서 tar xvfz downloade.tar 를 실행합니다.
- cd /to untared 디렉토리
- sudo python setup.py 설치를 실행합니다.
"Environment Error: /usr/local/bin/mysql/bin"과 같은 오류가 표시되면 "export PATH:/usr/local/mysql/bin" 경로 ass를 추가하십시오.하지만 id는 나에게 도움이 되지 않았고 나는 다른 해결책을 찾았다.명령어 실행 오류 출력은 다음과 같습니다.
파일 "/path_to_file/MySQL-python-1.2.4b4/setup_posix.py", 줄 25, mysql_config_path에서 EnvironmentError("%s not found")를 올립니다.
vim을 사용하여 setup_posix.py를 열고 25행으로 이동합니다(같은 버전이 아니면 다를 수 있습니다).
mysql에 '/usr/local/mysql/bin/'과 같은 심볼릭 링크가 없는 한 편집 후 25행은 다음과 같습니다.
f = popen("%s --%s" % ('/usr/local/mysql/bin/mysql_config', what))
그 후, 다음과 같은 에러가 발생했습니다.
django.core. 예외.잘못 구성됨:MySQLdb 모듈 로드 중 오류 발생: dlopen(/Library/Python/2.7/site-packages/My)SQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg/_mysql.so, 2): 라이브러리가 로드되지 않았습니다: libmysqlclient.18.dylib 참조처: / Library/Python/2.7/site-packages/MySQL_python-1.2.4b4-py2.7-macosx-10.8-intel.egg/_mysql.so 이유: 이미지를 찾을 수 없습니다.
마지막으로 콘솔에서 다음 작업을 수행했습니다.
sudo ln - s /usr / local / local / dipl / libmysqlclient . 18 . dylib / usr / lib / libmysqlclient . 18 . dylib
현재는 모든 것이 정상적으로 동작하고 있습니다.그래서 Mac을 사용하는 사람에게 도움이 되었으면 합니다. :)
있다.mysqldb
에는 ((데비안/우분투의 경우) 명령어를 사용합니다.sudo apt-get install python-mysqldb
sql connector를 찾지 못했기 때문입니다.시험:
pip install mysqlclient
이러한 환경에서 이 문제를 해결했습니다.
$ pyenv --version
pyenv 1.2.9
$ python --version
Python 3.7.2
$ python -m django --version
2.1.7
./filength.화이
DATABASES = {
'default': {
'NAME': 'my_db_name',
'ENGINE': 'mysql.connector.django', # 'django.db.backends.mysql'
'USER': '<user>',
'PASSWORD': '<pass>',
'HOST': 'localhost',
'PORT': 3306,
'OPTIONS': {
'autocommit': True,
},
}
}
「 」를 사용하고 'ENGINE': 'mysql.connector.django'
합니다.실행: , 「 」, 「 」, 「 」, 「 」를 실행합니다.★★★★
$ pip install mysql-connector-python
Successfully installed mysql-connector-python-8.0.15 protobuf-3.7.0 six-1.12.0
:$ pip install mysql-python
나한테는 통하지 않았어
「」를 사용하는 는, 의 점에 해 주세요.'ENGINE': 'django.db.backends.mysql'
이치노
$ pip install mysqlclient
종종: :
$ python manage.py migrate
문제가 없으면 python은 다음 테이블 ID 데이터베이스를 만듭니다.
auth_group
auth_group_permissions
auth_permission
auth_user
auth_user_groups
auth_user_user_permissions
django_admin_log
django_content_type
django_migrations
django_session
Python 버전 3.4 이상을 사용하는 경우,
sudo apt-get install python3-dev libmysqlclient-dev
를 참조해 주세요.으로, 「」, 「」를 인스톨 .pip install mysqlclient
피피
여기서 Windows 환경용 Mysql-python을 다운로드하여 설치합니다.http://www.lfd.uci.edu/~sublke/subliclibs/#sublic-sublic.
Ubuntu 16.04 및 18.04 또는 python 3 버전의 경우
sudo apt-get install python3-mysqldb
Ubuntu에서는 배포 저장소를 사용하는 것이 좋습니다.
sudo apt-get install python-mysqldb
시험:
pip install mysqlclient
가상 환경에서 사용하는 것이 좋습니다.
Will과 같은 에러메시지로 mysql을 먼저 설치했는데 설치 중에 누락된 파일이 추가되기 때문입니다.그래서 그 후에
brew install mysql
pip install mysql-python
에러 없이 실행.
저도 마찬가지였고, 이것은 Django 개발자뿐만 아니라 Flask에서도 공통적인 오류가 되었다고 생각하기 때문에 이 문제를 해결한 방법은 brew를 사용하는 것입니다.
brew install mysql
sudo pip install mysql-python
이렇게 해서 모든 문제가 해결되었고 두 프레임워크 모두 완벽하게 잘 작동합니다.
추신: macport를 사용하는 사람(나 등)에게는 brew가 다른 레벨에서 동작하기 때문에 문제가 될 수 있으므로 macport 대신 brew를 사용하는 것이 좋습니다.
제가 도움이 될 수 있었으면 좋겠어요.
버전 오류인 것 같아요.
다음의 순서로 인스톨 해 주세요.
sudo apt-get install python3-mysqldb
pip3 install mysqlclient
python3 manage.py makemigrations
python3 manage.py migrate
나도 같은 문제를 겪고 있었다.다음과 같이 나의 문제를 해결했다.
셸에서 pip install pymysql을 실행합니다.
그런 다음 프로젝트 오리진 디렉토리(settings.py와 동일)에서 init.py 파일을 편집하고,
추가:
Import pymysql
pymysql.install_as_MySQLdb()
이게 문제를 해결할 수 있을 거야.
나는 이것에 오랫동안 갇혀 있다가 mysqlclient가 django 전에 설치되어 있지 않으면 무엇이 잘못되었는지 깨달았다.이 에러를 발생시키기 때문에 간단한 해결책은 다음과 같다.
pip uninstall django
pip install mysqlclient
pip install django
다른 답변에 덧붙이자면 Django를 사용하는 경우 Django를 설치하기 전에 mysql-python을 설치하는 것이 좋습니다.
나는 이것에 많은 시간을 낭비했다.기본 데이터베이스 라이브러리는 Python 3에서 지원되지 않습니다.다른 걸 쓰셔야 돼요.
에러가 이렇게 생겼을 경우
django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module:
dlopen(/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/_mysql.so, 2): Library not loaded:
/usr/local/opt/mysql/lib/libmysqlclient.20.dylib
Referenced from: /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/_mysql.so
다음에, 다음의 조작을 실시합니다.
pip install python-mysqldb
비슷한 문제에 직면했다.★★★★★★★★★★★★★★★★★★★★★★를 인스톨 해 보았다.mysql-python
오류로 인해 했습니다.
나에게 효과가 있었던 솔루션
conda install mysql-python
gcc 의존성이 없는 아나콘다를 이미 설치했습니다.
MySQL을 기본 데이터베이스로 사용하려고 했을 때와 비슷한 오류가 발생했습니다.
이러한 오류는 mysqlclient가 설치되지 않았기 때문일 수 있습니다.
에서 을(를 할 수 있습니다.
pip install mysqlclient
python의 ) (python)
★★★★★★★★★★★★★★★★★」pip install mysql-python
python의 ) (python은 python)
제 경우, 이 요건을 충족한 후에도 동일한 오류가 발생하여 다음과 같이 해결되었습니다.django 프로젝트 디렉토리에서 venv 디렉토리를 선택하고 이러한 디렉토리에서
pyven.cfg 파일을 선택하고 이 파일을 편집할지 묻는 대화 상자에서 허용을 클릭합니다.이 파일에서는
include-system-site-packages
로 설정되어 있다.false
이 ; 이 코드 줄에서 true로 바꿔주세요.
include-system-site-packages = true
이제 모든 것이 잘 작동한다.
pip을 사용하여 실행해 보십시오.Windows에서 권장되는 명령어는 다음과 같습니다.
python -m pip install mysqlclient
가상 환경에서 사용
설치(찾을 수 없는 경우):
pip install mysql.connector
설정:
'default': {
'ENGINE': 'mysql.connector.django',
'NAME': '...',
'HOST': '...',
'PORT': '3306',
'USER': '...',
'PASSWORD': '...',
}
이거 드셔보세요
apt-get install libmysqlclient-dev
mysqlclient 설치를 다시 시도합니다.
pip install mysqlclient
다음의 조작 모드를 시험해 볼 수 있습니다.
sudo python manage.py runserver 0.0.0.0:8000
언급URL : https://stackoverflow.com/questions/15312732/django-core-exceptions-improperlyconfigured-error-loading-mysqldb-module-no-mo
'itsource' 카테고리의 다른 글
Lodash를 사용하여 객체의 키를 필터링하려면 어떻게 해야 합니까? (0) | 2023.01.15 |
---|---|
Laravel 관련 모델이 있는지 확인 (0) | 2023.01.15 |
특정 날짜 이후 MySQL 데이터 가져오기 (0) | 2023.01.15 |
SQL 값을 여러 행으로 분할 (0) | 2023.01.15 |
last / url 뒤의 문자 (0) | 2023.01.15 |