L'installation de MySQL-python sur mac
J'utilise OSX 10.8 et PyCharm de travailler sur un Python projet de développement. J'ai installé MySQL-python pour le mac en utilisant les instructions sur le site web
http://blog.infoentropy.com/MySQL-python_EnvironmentError_mysql_config_not_found
Toutefois, l'exécution du projet me donne cette erreur:
django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: dlopen(/Users/ashishagarwal/.python-eggs/MySQL_python-1.2.3-py2.7-macosx-10.6-intel.egg-tmp/_mysql.so, 2): Symbol not found: _mysql_affected_rows
Referenced from: /Users/ashishagarwal/.python-eggs/MySQL_python-1.2.3-py2.7-macosx-10.6-intel.egg-tmp/_mysql.so
Expected in: flat namespace
in /Users/ashishagarwal/.python-eggs/MySQL_python-1.2.3-py2.7-macosx-10.6-intel.egg-tmp/_mysql.so
Le fichier mentionné int l'erreur existe à l'emplacement /Utilisateurs/ashishagarwal/.python-oeufs/MySQL_python-1.2.3-py2.7-macosx 10.6 intel.oeuf tmp/_mysql.donc
La totalité du message d'erreur est -
/usr/local/bin/python2.7-32 /Users/ashishagarwal/Optimus/MashPotato/backend/mashpotato/manage.py testserver --addrport 8000
Running on development server
Traceback (most recent call last):
File "/Users/ashishagarwal/Optimus/MashPotato/backend/mashpotato/manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/core/management/__init__.py", line 453, in execute_from_command_line
utility.execute()
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/core/management/__init__.py", line 392, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/core/management/__init__.py", line 272, in fetch_command
klass = load_command_class(app_name, subcommand)
File "/Library/Frameworks/Python.framework/Versions/2.7/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 "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/utils/importlib.py", line 35, in import_module
__import__(name)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/south/management/commands/__init__.py", line 10, in <module>
import django.template.loaders.app_directories
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/template/loaders/app_directories.py", line 23, in <module>
mod = import_module(app)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/utils/importlib.py", line 35, in import_module
__import__(name)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/contrib/admin/__init__.py", line 3, in <module>
from django.contrib.admin.helpers import ACTION_CHECKBOX_NAME
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/contrib/admin/helpers.py", line 4, in <module>
from django.contrib.admin.util import (flatten_fieldsets, lookup_field,
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/contrib/admin/util.py", line 6, in <module>
from django.db import models
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/__init__.py", line 40, in <module>
backend = load_backend(connection.settings_dict['ENGINE'])
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/__init__.py", line 34, in __getattr__
return getattr(connections[DEFAULT_DB_ALIAS], item)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/utils.py", line 93, in __getitem__
backend = load_backend(db['ENGINE'])
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/db/utils.py", line 27, in load_backend
return import_module('.base', backend_name)
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/django/utils/importlib.py", line 35, in import_module
__import__(name)
File "/Library/Frameworks/Python.framework/Versions/2.7/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: dlopen(/Users/ashishagarwal/.python-eggs/MySQL_python-1.2.3-py2.7-macosx-10.6-intel.egg-tmp/_mysql.so, 2): Symbol not found: _mysql_affected_rows
Referenced from: /Users/ashishagarwal/.python-eggs/MySQL_python-1.2.3-py2.7-macosx-10.6-intel.egg-tmp/_mysql.so
Expected in: flat namespace
in /Users/ashishagarwal/.python-eggs/MySQL_python-1.2.3-py2.7-macosx-10.6-intel.egg-tmp/_mysql.so
Process finished with exit code 1
Vous devez vous connecter pour publier un commentaire.
Vous devez installer MySQL à travers Homebrew tout d'abord, pour obtenir python-mysql fonctionne correctement sur mac OS X.
mysql
paquet avec homebrew, ces sera également installé.Assurez-vous d'avoir la dernière version de Xcode, y compris les Outils de Ligne de Commande. J'ai simplement téléchargé les 2 go de mise à jour de l'app store. J'ai eu un problème similaire, plus précisément cette, et qu'il fixe.
Cheers!
J'ai installé mysql il y a longtemps avec homebrew donc quand j'ai couru dans le pétrin maintenant, après la mise à jour d'OSX je l'ai réinstallé à nouveau avec
brew reinstall [email protected]
(j'ai couru 5.7.10) et de le réinstaller MySQL-python, je m'attendais à être résolu. Obtenu l'erreur mentionnée ci-dessus.Il n'avait vraiment ma tête et après avoir passé plusieurs heures sur elle, je n'avais aucune idée de quoi faire, reconstruite à partir de la source et tout et tout. Essayé d'autres applis python pour mysql, mais c'était la même chose.
J'ai réalisé que le client en cours de construction par MySQL-python a été contre la mauvaise version donc j'ai vérifié où la
/usr/local/opt/mysql
était liée à la et il était là, il était lié à une version précédente qui j'avais installé via dmg comme il y a 7 ans! Une fois que j'ai enlevé le lien, puis a courubrew link mysql
et puis créé une nouvelle virtualenv et installé tous les paquets à partir de zéro, il a finalement travaillé!si vous utilisez python comme:
vous devez télécharger mysql Connector d'abord voici le lien lien