복붙노트

[PYTHON] "MySQLdb 모듈로드 중 오류 발생 : MySQLdb라는 모듈이 없습니다"- 이전에 게시 된 솔루션을 시도했습니다.

PYTHON

"MySQLdb 모듈로드 중 오류 발생 : MySQLdb라는 모듈이 없습니다"- 이전에 게시 된 솔루션을 시도했습니다.

이것은 OSX 10.6 사용자에게 많이 논의 된 문제이지만 작동하는 솔루션을 찾을 수 없었습니다. 여기 내 설정 :

파이썬 2.6.1 64 비트 장고 1.2.1 MySQL 5.1.47 osx10.6 64 비트

--no-site-packages를 사용하여 virtualenvwrapper를 만든 다음 Django를 설치했습니다. virtualenv를 활성화하고 python manage.py syncdb를 실행하면이 오류가 발생합니다.

Traceback (most recent call last):
File "manage.py", line 11, in <module>
  execute_manager(settings)
File "/Users/joerobinson/.virtualenvs/dj_tut/lib/python2.6/site-packages/django/core/management/__init__.py", line 438, in execute_manager
  utility.execute()
File "/Users/joerobinson/.virtualenvs/dj_tut/lib/python2.6/site-packages/django/core/management/__init__.py", line 379, in execute
  self.fetch_command(subcommand).run_from_argv(self.argv)
File "/Users/joerobinson/.virtualenvs/dj_tut/lib/python2.6/site-packages/django/core/management/__init__.py", line 257, in fetch_command
  klass = load_command_class(app_name, subcommand)
File "/Users/joerobinson/.virtualenvs/dj_tut/lib/python2.6/site-packages/django/core/management/__init__.py", line 67, in load_command_class
  module = import_module('%s.management.commands.%s' % (app_name, name))
File "/Users/joerobinson/.virtualenvs/dj_tut/lib/python2.6/site-packages/django/utils/importlib.py", line 35, in import_module
  __import__(name)
File "/Users/joerobinson/.virtualenvs/dj_tut/lib/python2.6/site-packages/django/core/management/commands/syncdb.py", line 7, in <module>
from django.core.management.sql import custom_sql_for_model, emit_post_sync_signal
File "/Users/joerobinson/.virtualenvs/dj_tut/lib/python2.6/site-packages/django/core/management/sql.py", line 5, in <module>
from django.contrib.contenttypes import generic
File "/Users/joerobinson/.virtualenvs/dj_tut/lib/python2.6/site-packages/django/contrib/contenttypes/generic.py", line 6, in <module>
  from django.db import connection
File "/Users/joerobinson/.virtualenvs/dj_tut/lib/python2.6/site-packages/django/db/__init__.py", line 75, in <module>
  connection = connections[DEFAULT_DB_ALIAS]
File "/Users/joerobinson/.virtualenvs/dj_tut/lib/python2.6/site-packages/django/db/utils.py", line 91, in __getitem__
  backend = load_backend(db['ENGINE'])
File "/Users/joerobinson/.virtualenvs/dj_tut/lib/python2.6/site-packages/django/db/utils.py", line 32, in load_backend
  return import_module('.base', backend_name)
File "/Users/joerobinson/.virtualenvs/dj_tut/lib/python2.6/site-packages/django/utils/importlib.py", line 35, in import_module
  __import__(name)
File "/Users/joerobinson/.virtualenvs/dj_tut/lib/python2.6/site-packages/django/db/backends/mysql/base.py", line 14, in <module>
  raise ImproperlyConfigured("Error loading MySQLdb module: %s" % e)
django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No module named MySQLdb

또한 파이썬 어댑터 용 MySQL을 설치했으나 아무런 도움이되지 못했습니다 (부적절하게 설치했을 수도 있습니다).

누구도 전에 이것을 처리 했습니까?

해결법

  1. ==============================

    1.나는 같은 오류가 있었고 pip는 MySQL-python을 설치해서 해결했다.

    나는 같은 오류가 있었고 pip는 MySQL-python을 설치해서 해결했다.

    대체 설치 :

    아래에서 Soli는 다음과 같은 오류 메시지가 나타나면이를 알려줍니다.

    ... 다음에는 시스템 종속성 문제가 더 있습니다. 이 문제는 시스템마다 다르지만 데비안에서 파생 된 시스템의 경우 다릅니다.

    sudo apt-get python-mysqldb 설치하기

  2. ==============================

    2.우분투를 실행하면 다음을 수행해야합니다.

    우분투를 실행하면 다음을 수행해야합니다.

    sudo apt-get install python-mysqldb
    
  3. ==============================

    3.다른 답변을 추가하면 다음 설치가 mysql-python 설치를 완료하는 데 도움이됩니다.

    다른 답변을 추가하면 다음 설치가 mysql-python 설치를 완료하는 데 도움이됩니다.

    virtualenv, mysql-python, pip : 아무도 몰라?

    우분투에서 ...

    apt-get install libmysqlclient-dev
    apt-get install python-dev
    pip install mysql-python
    

    적절한 권한이없는 경우 명령의 시작 부분에 'sudo'를 추가하는 것을 잊지 마십시오.

  4. ==============================

    4.아래 명령을 시도하십시오. 그들은 나를 위해 일한다.

    아래 명령을 시도하십시오. 그들은 나를 위해 일한다.

    brew install mysql-connector-c 
    pip install MySQL-python
    
  5. ==============================

    5.mysql_config가 경로에 있어야합니다. Mac의 경우

    mysql_config가 경로에 있어야합니다. Mac의 경우

    export PATH=$PATH:/usr/local/mysql/bin/
    pip install MySQL-python
    
  6. ==============================

    6.

    pip install mysql-python
    

    오류가 발생했습니다.

    sudo apt-get install python-mysqldb
    

    문제가 해결되었습니다.

  7. ==============================

    7.나는 그것이 어떻게 작동하는지 :

    나는 그것이 어떻게 작동하는지 :

    virtualenv -p python3.5 env/test
    

    내 env 소싱 후 :

    pip install pymysql
    pip install django
    

    그런 다음 startproject를 실행하고 manage.py 내부에서 다음을 추가했습니다.

    + try:
    +     import pymysql
    +     pymysql.install_as_MySQLdb()
    + except:
    +     pass
    

    또한 내부 설정을 업데이트했습니다.

    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'NAME': 'foobar_db',
            'USER': 'foobaruser',
            'PASSWORD': 'foobarpwd',
        }
    }
    

    나는 또한 configparser == 3.5.0 내 virtualenv에 설치되어 있는지, 그것이 필요하지 않은지 확실하지 않다 ...

    희망은 도움이된다.

  8. ==============================

    8.다음은 우분투 13.10 64 비트를 실행하면서 완벽하게 작동했습니다.

    다음은 우분투 13.10 64 비트를 실행하면서 완벽하게 작동했습니다.

    sudo apt-get install libmysqlclient-dev
    sudo apt-get install python-dev
    

    이제 virtualenv (예 : env 폴더)로 이동하여 다음을 실행합니다.

    sudo ./bin/pip install mysql-python
    

    나는 실제로 그 해결책을 별도의 질문으로 발견했으며 아래에 인용하고있다.

    나는 이것이 OSX에서도 작동해야한다고 생각한다. 유일한 문제는 컴파일 할 때 libmysqlclient-dev와 python-dev을 설치하는 것과 동일한 명령어를 얻는 것입니다. mysql-python 나는 추측한다.

    희망이 도움이됩니다.

  9. ==============================

    9.이것을 시도하십시오 : 이것은 저를위한 문제점을 해결했다.

    이것을 시도하십시오 : 이것은 저를위한 문제점을 해결했다.

  10. ==============================

    10.이 문제는 Python 어댑터 용 MySQL의 불완전 / 부정확 한 설치 결과였습니다. 특히, 나는 / usr / local / mysql / bin / mysql_config를 가리 키도록 mysql_config 파일의 경로를 편집해야했다.이 기사에서 더 자세히 다뤘다. http://dakrauth.com/blog/entry/python-and- django-setup-mac-os-x-leopard /

    이 문제는 Python 어댑터 용 MySQL의 불완전 / 부정확 한 설치 결과였습니다. 특히, 나는 / usr / local / mysql / bin / mysql_config를 가리 키도록 mysql_config 파일의 경로를 편집해야했다.이 기사에서 더 자세히 다뤘다. http://dakrauth.com/blog/entry/python-and- django-setup-mac-os-x-leopard /

  11. ==============================

    11.이 기능은 Red Hat Enterprise Linux 서버 버전 6.4에서 작동합니다.

    이 기능은 Red Hat Enterprise Linux 서버 버전 6.4에서 작동합니다.

    sudo yum install mysql-devel
    sudo yum install python-devel
    pip install mysql-python
    
  12. ==============================

    12.sudo apt-get python-mysqldb는 우분투에서 완벽하게 작동합니다.

    sudo apt-get python-mysqldb는 우분투에서 완벽하게 작동합니다.

    mysql-python을 설치하면 환경 오류가 발생합니다.

  13. ==============================

    13.pip install mysqlclient로 설치할 수있다.

    pip install mysqlclient로 설치할 수있다.

  14. ==============================

    14.나는 OSX Mavericks와 Pycharm 3으로 업그레이드를했고이 오류가 발생하기 시작했다. 나는 pip를 사용했고 설치가 쉽고 오류가 발생했다 :

    나는 OSX Mavericks와 Pycharm 3으로 업그레이드를했고이 오류가 발생하기 시작했다. 나는 pip를 사용했고 설치가 쉽고 오류가 발생했다 :

    그래서 Xcode 5로 업데이트하고 pip를 사용하여 다시 설치해야합니다.

    pip install mysql-python
    

    그것은 모든 문제를 해결합니다.

  15. ==============================

    15.여기서 발생한 오류는 파이썬 모듈을 가져 오는 중입니다. 이것은 OS X의 환경 변수 $ PYTHONPATH에 python site-packages 폴더를 추가함으로써 해결할 수 있습니다. 따라서 다음 명령을 .bash_profile 파일에 추가 할 수 있습니다 :

    여기서 발생한 오류는 파이썬 모듈을 가져 오는 중입니다. 이것은 OS X의 환경 변수 $ PYTHONPATH에 python site-packages 폴더를 추가함으로써 해결할 수 있습니다. 따라서 다음 명령을 .bash_profile 파일에 추가 할 수 있습니다 :

    export PYTHONPATH="$PYTHONPATH:/usr/local/lib/pythonx.x/site-packages/"
    

    * x.x를 사용중인 파이썬 버전으로 대체하십시오.

  16. ==============================

    16.python3을 사용하고 있다면 다음을 시도해보십시오 (내 OS는 Ubuntu 16.04 임).

    python3을 사용하고 있다면 다음을 시도해보십시오 (내 OS는 Ubuntu 16.04 임).

    sudo apt-get install python3-mysqldb
    
  17. ==============================

    17.핍 Windows 8 64 비트 시스템에서 나를 위해 작동하지 않았다. easy_install mysql-python이 저에게 효과적입니다. pip가 작동하지 않으면 easy_install을 사용하여 Windows에 바이너리를 작성하지 않아도됩니다.

    핍 Windows 8 64 비트 시스템에서 나를 위해 작동하지 않았다. easy_install mysql-python이 저에게 효과적입니다. pip가 작동하지 않으면 easy_install을 사용하여 Windows에 바이너리를 작성하지 않아도됩니다.

  18. ==============================

    18.OSX 10.6.6에서도 같은 문제가 발생했습니다. 그러나 터미널에있는 간단한 easy_install mysql-python은 다른 딸꾹질이 뒤따른 것처럼 해결하지 못했습니다 :

    OSX 10.6.6에서도 같은 문제가 발생했습니다. 그러나 터미널에있는 간단한 easy_install mysql-python은 다른 딸꾹질이 뒤따른 것처럼 해결하지 못했습니다 :

    오류 : 'gcc-4.2'명령이 종료 상태 1에서 실패했습니다.

    분명히이 문제는 XCode3 (기본적으로 OSX 10.6과 함께 제공됨)에서 XCode4로 업그레이드 한 후에 발생합니다. 이 새로운 버전은 ppc arch 구축에 대한 지원을 제거합니다. 같은 경우, 다음과 같이하기 전에 easy_install mysql-python을 시도해 보라.

    sudo bash
    export ARCHFLAGS='-arch i386 -arch x86_64'
    rm -r build
    python setup.py build
    python setup.py install
    

    이 솔루션에 대해 Ned Deily에게 많은 감사를드립니다. 여기에서 확인하십시오.

  19. ==============================

    19.나에게 문제는 단순히 mysql-python을 다시 설치하면 해결된다.

    나에게 문제는 단순히 mysql-python을 다시 설치하면 해결된다.

    pip uninstall mysql-python
    pip install mysql-python
    
  20. ==============================

    20.설치 명령 줄 도구는 나를 위해 작동합니다 :

    설치 명령 줄 도구는 나를 위해 작동합니다 :

    xcode-select --install
    
  21. ==============================

    21.pip를 사용하여 MySQL-python 라이브러리를 설치하여 동일한 문제를 극복했습니다. settings.py에서 데이터베이스 설정을 처음 변경하고 makemigrations 명령을 실행했을 때 내 콘솔에 표시되는 메시지를 볼 수 있습니다 (해결책은 아래 메시지를 따르고 있습니다).

    pip를 사용하여 MySQL-python 라이브러리를 설치하여 동일한 문제를 극복했습니다. settings.py에서 데이터베이스 설정을 처음 변경하고 makemigrations 명령을 실행했을 때 내 콘솔에 표시되는 메시지를 볼 수 있습니다 (해결책은 아래 메시지를 따르고 있습니다).

      (vir_env) admins-MacBook-Pro-3:src admin$ python manage.py makemigrations
    Traceback (most recent call last):
      File "manage.py", line 10, in <module>
        execute_from_command_line(sys.argv)
      File "/Users/admin/Desktop/SetUp1/vir_env/lib/python2.7/site-packages/django/core/management/__init__.py", line 338, in execute_from_command_line
        utility.execute()
      File "/Users/admin/Desktop/SetUp1/vir_env/lib/python2.7/site-packages/django/core/management/__init__.py", line 312, in execute
        django.setup()
      File "/Users/admin/Desktop/SetUp1/vir_env/lib/python2.7/site-packages/django/__init__.py", line 18, in setup
        apps.populate(settings.INSTALLED_APPS)
      File "/Users/admin/Desktop/SetUp1/vir_env/lib/python2.7/site-packages/django/apps/registry.py", line 108, in populate
        app_config.import_models(all_models)
      File "/Users/admin/Desktop/SetUp1/vir_env/lib/python2.7/site-packages/django/apps/config.py", line 198, in import_models
        self.models_module = import_module(models_module_name)
      File "/usr/local/Cellar/python/2.7.12_1/Frameworks/Python.framework/Versions/2.7/lib/python2.7/importlib/__init__.py", line 37, in import_module
        __import__(name)
      File "/Users/admin/Desktop/SetUp1/vir_env/lib/python2.7/site-packages/django/contrib/auth/models.py", line 41, in <module>
        class Permission(models.Model):
      File "/Users/admin/Desktop/SetUp1/vir_env/lib/python2.7/site-packages/django/db/models/base.py", line 139, in __new__
        new_class.add_to_class('_meta', Options(meta, **kwargs))
      File "/Users/admin/Desktop/SetUp1/vir_env/lib/python2.7/site-packages/django/db/models/base.py", line 324, in add_to_class
        value.contribute_to_class(cls, name)
      File "/Users/admin/Desktop/SetUp1/vir_env/lib/python2.7/site-packages/django/db/models/options.py", line 250, in contribute_to_class
        self.db_table = truncate_name(self.db_table, connection.ops.max_name_length())
      File "/Users/admin/Desktop/SetUp1/vir_env/lib/python2.7/site-packages/django/db/__init__.py", line 36, in __getattr__
        return getattr(connections[DEFAULT_DB_ALIAS], item)
      File "/Users/admin/Desktop/SetUp1/vir_env/lib/python2.7/site-packages/django/db/utils.py", line 240, in __getitem__
        backend = load_backend(db['ENGINE'])
      File "/Users/admin/Desktop/SetUp1/vir_env/lib/python2.7/site-packages/django/db/utils.py", line 111, in load_backend
        return import_module('%s.base' % backend_name)
      File "/usr/local/Cellar/python/2.7.12_1/Frameworks/Python.framework/Versions/2.7/lib/python2.7/importlib/__init__.py", line 37, in import_module
        __import__(name)
      File "/Users/admin/Desktop/SetUp1/vir_env/lib/python2.7/site-packages/django/db/backends/mysql/base.py", line 27, in <module>
        raise ImproperlyConfigured("Error loading MySQLdb module: %s" % e)
    django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No module named MySQLdb
    

    마지막으로 나는이 문제를 다음과 같이 극복했다.

    (vir_env) admins-MacBook-Pro-3:src admin$ pip install MySQLdb
    Collecting MySQLdb
      Could not find a version that satisfies the requirement MySQLdb (from versions: )
    No matching distribution found for MySQLdb
    (vir_env) admins-MacBook-Pro-3:src admin$ pip install MySQL-python
    Collecting MySQL-python
      Downloading MySQL-python-1.2.5.zip (108kB)
        100% |████████████████████████████████| 112kB 364kB/s 
    Building wheels for collected packages: MySQL-python
      Running setup.py bdist_wheel for MySQL-python ... done
      Stored in directory: /Users/admin/Library/Caches/pip/wheels/38/a3/89/ec87e092cfb38450fc91a62562055231deb0049a029054dc62
    Successfully built MySQL-python
    Installing collected packages: MySQL-python
    Successfully installed MySQL-python-1.2.5
    (vir_env) admins-MacBook-Pro-3:src admin$ python manage.py makemigrations
    No changes detected
    (vir_env) admins-MacBook-Pro-3:src admin$ python manage.py migrate
    Operations to perform:
      Synchronize unmigrated apps: staticfiles, rest_framework, messages, crispy_forms
      Apply all migrations: admin, contenttypes, sessions, auth, PyApp
    Synchronizing apps without migrations:
      Creating tables...
        Running deferred SQL...
      Installing custom SQL...
    Running migrations:
      Rendering model states... DONE
      Applying PyApp.0001_initial... OK
      Applying PyApp.0002_auto_20170310_0936... OK
      Applying PyApp.0003_auto_20170310_0953... OK
      Applying PyApp.0004_auto_20170310_0954... OK
      Applying PyApp.0005_auto_20170311_0619... OK
      Applying PyApp.0006_auto_20170311_0622... OK
      Applying PyApp.0007_loraevksensor... OK
      Applying PyApp.0008_auto_20170315_0752... OK
      Applying PyApp.0009_auto_20170315_0753... OK
      Applying PyApp.0010_auto_20170315_0806... OK
      Applying PyApp.0011_auto_20170315_0814... OK
      Applying PyApp.0012_auto_20170315_0820... OK
      Applying PyApp.0013_auto_20170315_0822... OK
      Applying PyApp.0014_auto_20170315_0907... OK
      Applying PyApp.0015_auto_20170315_1041... OK
      Applying PyApp.0016_auto_20170315_1355... OK
      Applying PyApp.0017_auto_20170315_1401... OK
      Applying PyApp.0018_auto_20170331_1348... OK
      Applying PyApp.0019_auto_20170331_1349... OK
      Applying PyApp.0020_auto_20170331_1350... OK
      Applying PyApp.0021_auto_20170331_1458... OK
      Applying PyApp.0022_delete_postoffice... OK
      Applying PyApp.0023_posoffice... OK
      Applying PyApp.0024_auto_20170331_1504... OK
      Applying PyApp.0025_auto_20170331_1511... OK
      Applying contenttypes.0001_initial... OK
      Applying auth.0001_initial... OK
      Applying admin.0001_initial... OK
      Applying contenttypes.0002_remove_content_type_name... OK
      Applying auth.0002_alter_permission_name_max_length... OK
      Applying auth.0003_alter_user_email_max_length... OK
      Applying auth.0004_alter_user_username_opts... OK
      Applying auth.0005_alter_user_last_login_null... OK
      Applying auth.0006_require_contenttypes_0002... OK
      Applying sessions.0001_initial... OK
    (vir_env) admins-MacBook-Pro-3:src admin$ 
    
  22. ==============================

    22.이 명령을 실행하십시오.

    이 명령을 실행하십시오.

    sudo pip install mysql-python;
    

    이제 명령을 실행할 수 있습니다.

    python manage.py startapp filename;
    
  23. ==============================

    23.나는 당신과 비슷한 상황에서 mac osx의 virtualenv에서 python3.7과 django 2.1을 사용하고있다. 명령을 실행 해보십시오.

    나는 당신과 비슷한 상황에서 mac osx의 virtualenv에서 python3.7과 django 2.1을 사용하고있다. 명령을 실행 해보십시오.

    pip install mysql-python
    pip install pymysql
    

    프로젝트 폴더에서 __init__.py 파일을 편집하고 다음을 추가하십시오 :

    import pymysql
    
    pymysql.install_as_MySQLdb()
    

    그런 다음 실행하십시오 : python3 manage.py runserver 또는 python manage.py runserver

  24. from https://stackoverflow.com/questions/2952187/getting-error-loading-mysqldb-module-no-module-named-mysqldb-have-tried-pre by cc-by-sa and MIT license