programing

OSX 10.6에서 Python 및 Django와 함께 MySQLdb를 사용하는 방법

firstcheck 2022. 10. 8. 08:52
반응형

OSX 10.6에서 Python 및 Django와 함께 MySQLdb를 사용하는 방법

이것은 OSX 10.6 유저에게 있어서 많이 논의되고 있는 문제이지만, 아직 유효한 솔루션을 찾을 수 없었습니다.설정은 다음과 같습니다.

Python 2.6.1 64비트 Django 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 for Python 어댑터도 설치했지만 아무 소용이 없었습니다(잘못 설치했을 수도 있습니다).

전에도 이런 일을 겪으신 분 있나요?

, 「 」라고 하는 에러가 났습니다.pip install MySQL-python해결해 주셨어요.

대체 설치:

  • 는, 「 」를 해 주세요.easy_install MySQL-python작동해야 합니다.
  • 시스템에 되는 경우 해당 python)을 사용해야 할 수 .sudo apt-get install ...)

다음 에러가 발생했을 경우 Soli는 다음과 같은 점에 주목합니다.

EnvironmentError: mysql_config not found

...시스템 의존성 문제가 더 있습니다.이 문제를 해결하는 방법은 시스템에 따라 다르지만 Debian에서 파생된 시스템의 경우 다음과 같습니다.

sudo apt-get install python-mysqldb

Ubuntu를 운영하면서 해야 할 일은 다음과 같습니다.

sudo apt-get install python-mysqldb

다른 답변에 덧붙여, 다음과 같이 mysql-python 설치를 완료할 수 있었습니다.

virtualenv, mysql-param, pip: 아는 사람?

우분투에서...

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

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

다음 명령어를 사용해 보십시오.그들은 나를 위해 일한다:

brew install mysql-connector-c 
pip install MySQL-python

mysql_config경로 상에 있어야 합니다.doMac을 사용합니다.

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

에러가 발생했습니다.

Environment Error: mysql_config를 찾을 수 없습니다.

sudo apt-get install python-mysqldb

문제를 해결했습니다.

작동 방법:

virtualenv -p python3.5 env/test

내 환경을 찾은 후:

pip install pymysql
pip install django

그런 다음 시작 프로젝트를 실행하여 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버추얼굴

도움이 됐으면 좋겠는데

Ubuntu 13.10 64비트를 실행하고 있는 나에게 다음과 같은 기능이 완벽하게 작동했습니다.

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

이제 virtualenv(env 폴더 등)로 이동하여 다음을 수행합니다.

sudo ./bin/pip install mysql-python

실제로는 다른 질문에서 해결책을 찾았고, 아래에 견적을 내겠습니다.

--no-site-packages 스위치(기본값)를 사용하여 virtualenv를 생성한 경우 MySQLdb와 같은 시스템 전체에 설치된 추가 정보는 가상 환경 패키지에 포함되지 않습니다.

virtualenv와 함께 설치된 pip 명령을 사용하여 MySQLdb를 설치해야 합니다.bin/activate 스크립트를 사용하여 virtualenv를 활성화하거나 virtualenv 내에서 bin/pip을 사용하여 MySQLDB 라이브러리를 로컬로 설치합니다.

또는 --system-site-package 스위치를 사용하여 시스템 사이트 패키지가 포함된 새 virtualenv를 만듭니다.

OSX를 사용하다는, 「」의 인스톨에 입니다.libmysqlclient-dev ★★★★★★★★★★★★★★★★★」python-devmysql-python그런 것 같다.

이게 도움이 됐으면 좋겠다.

이것을 시험해 보세요.이것으로 나는 그 문제를 해결했다.

pip install MySQL-python

이 문제는 MySQL for Python 어댑터 설치가 불완전하거나 잘못되었기 때문입니다.구체적으로는 mysql_config 파일의 경로를 /usr/local/sysql/sysql/sysql_config를 가리키도록 편집해야 했습니다.이 문서는 http://dakrauth.com/blog/entry/python-and-django-setup-mac-os-x-leopard/ 에서 자세히 설명되어 있습니다.

sudo apt-get install python-mysqldbubuntuubuntu에서합니다.

pip install mysql-python환경 오류 발생

이것은 Red Hat Enterprise Linux Server 릴리스 6.4에서 동작했습니다.

sudo yum install mysql-devel
sudo yum install python-devel
pip install mysql-python

할 수 .pip install mysqlclient

OSX Mavericks와 Pycharm 3으로 업그레이드하면 이 오류가 나타나기 시작합니다.pip과 간단한 설치를 사용하여 다음 오류가 나타납니다.

명령어 usr/bin/clang'이 종료 상태 1에서 실패했습니다.

그래서 Xcode 5로 업데이트하고 pip을 사용하여 설치를 다시 시도했습니다.

pip install mysql-python

그것으로 모든 문제가 해결되었다.

여기서 발생한 오류는 python 모듈을 가져오는 동안 발생했습니다.이 문제는 OS X 환경변수 $PYthonPATH에 python site-packages 폴더를 추가하면 해결할 수 있습니다.따라서 다음 명령을 .bash_profile 파일에 추가할 수 있습니다.

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

* x.x를 사용 중인 python 버전으로 바꿉니다.

python3 를 사용하고 있는 경우는, 다음과 같이 시험해 주세요(내 OS 는 Ubuntu 16.04 입니다).

sudo apt-get install python3-mysqldb

pipWindows 8 64 트 windows windows 。 easy_install mysql-python, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아, 아.easy_install않는 경우 위해.pip은 에서 바이너리를 빌드합니다.

OSX 10.6.6이치노 한 ★★★★★★★★★★★★★★★★★★★★★★★★★★★★.easy_install mysql-python되지 않았다.

error: command 'gcc-4.2' failed with exit status 1

이 문제는 XCode3(OSX 10.6에 부속되어 있음)에서 XCode4로 업그레이드한 후에 발생합니다.ppc arch 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에게 이 솔루션을 제공해 주셔서 감사합니다.여기를 체크해 주세요

저는 mysql-python 재설치만으로 문제가 해결되었습니다.

pip uninstall mysql-python
pip install mysql-python

명령줄 도구 설치 기능:

xcode-select --install

pip을 사용하여 라이브러리를 설치하여 동일한 문제를 해결했습니다.settings.py에서 데이터베이스 설정을 처음 변경하고 make migrations 명령을 실행했을 때 콘솔에 표시되는 메시지가 나타납니다(솔루션은 다음 메시지를 따릅니다.그것만 참조해 주세요).

  (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$ 

이 명령어 실행

sudo pip install mysql-python;

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

python manage.py startapp filename;

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

언급URL : https://stackoverflow.com/questions/2952187/how-to-use-mysqldb-with-python-and-django-in-osx-10-6

반응형