Installer MySQL Python sur Mac OS X

Longue histoire courte, quand j'écris le code suivant:

sudo easy_install MySQL-python

j'ai l'erreur

EnvironmentError: mysql_config pas trouvé

d'accord, donc il ya beaucoup de discussions et autres sur la façon de corriger ça, donc je lance ce code:

export PATH=$PATH:/usr/local/mysql/bin

Puis j'exécute à nouveau mon sudo code:

sudo easy_install MySQL-python

Ensuite, j'obtiens l'erreur suivante.

le script de configuration est sorti avec erreur: la commande 'llvm-gcc-4.2' a échoué avec statut de sortie 1

Google/Débordement de Pile, et on me dit de télécharger un GCC package qui j'ai fait l'autre jour, 200 MO ou là-abouts et toujours pas de correctif.

a ce point je suis perdu, ils disent que la folie fait la même chose encore et encore tout en s'attendant à un résultat différent. Eh bien, j'ai continuellement lancé le code susmentionné en espérant un résultat différent, donc je ne suis pas très loin de devenir fou.

À ce point dans mon Python carrière, je suis nouveau à ce, mais je suis prêt à essayer à peu près tout pour obtenir CE et en cours d'exécution.

Si ça aide, je suis officiellement en cours d'exécution, Mac OS X 10.7.5, et j'ai MAMP installé (est-ce un problème?)

aussi, l'autre jour quand j'ai essayé tout cela pour la première fois que j'ai installé (réinstallé?) De MySQL, donc je suis vraiment dans une situation difficile en ce moment.

Est-il un correctif?

j'ai creusé mon cerveau, cherché Google, lire le débordement de la pile, et passé des heures à essayer de comprendre cela en vain.

22
demandé sur Peter Mortensen 2013-04-24 06:18:04

12 réponses

une Autre option est d'utiliser pymysql c'est une pure connexion client Python avec MySQL donc vous n'avez pas à vous mêler de la compilation, un bon exercice, mais ça peut être frustrant si vous essayez juste de faire quelque chose. pymysql suit la même API que MySQLdb, il peut essentiellement être utilisé en remplacement.

aussi, C'était que MySQLdb, ne fonctionnait pas avec Python 3, mais cela a pu changer, pymysql n'avait pas ce problème qui a aussi induit moi pour changer, ça a peut-être changé. pymysql peut être plus lent que MySQLdb mais vous devez voir si vous remarquez que, il est aussi sous une licence différente (MIT pour pymysql, GPL pour MySQLdb)

22
répondu Paul Joireman 2015-01-15 15:47:40

voici ce que j'installerais, surtout si vous voulez utiliser homebrew:

  • XCode et les outils en ligne de commande (comme suggéré par @7stud, @kjti)
  • Installer homebrew
  • brew install mysql-connector-c
  • pip install mysql-python
53
répondu m01 2014-09-18 18:36:54

Installer mysql à l'aide de homebrew, alors vous pouvez installer mysql python via pip.

pip install MySQL-python

ça marche pour moi.

11
répondu Jude 2014-08-19 20:11:22

Pour Python 3+mysql-python la Bibliothèque est cassée. Au lieu de cela, utilisez mysqlclient bibliothèque. Install with: pip install mysqlclient

C'est une fourchette de mysql-python (aussi connu sous le nom de MySQLdb) qui supporte Python 3+

cette bibliothèque parle à L'interface C du client MySQL, et est plus rapide que le libray pymysql pur-python.

Remarque:: vous aurez besoin des outils de développement mysql installés. Un moyen facile de faire cela sur un Mac est de exécutez

brew install mysql-connector-c

déléguer cette tâche à homebrew. Si vous êtes sous linux, vous pouvez les installer via les instructions au mysqlclient page github.

7
répondu The Aelfinn 2017-01-04 23:20:41

j'utilise OSX-v 10.10.4. La solution ci-dessus est un rapide et facile.

Happening OSX n'a pas la bibliothèque de connexion par défaut.

d'Abord, vous devez installer le connecteur:

brew install mysql-connector-c

puis installez avec pip mysql

pip install mysql-python
5
répondu jasmo2 2017-05-23 12:02:42

Il est temps d'être un grand garçon et l'installer à partir des sources. Essayez ceci:

1) Téléchargez le MySQL-python-1.X. X. du goudron.le fichier gz (par défaut ira à votre répertoire de téléchargements)

2) Ouvrez une fenêtre de Terminal et un cd dans le répertoire de téléchargements.

3) Décompressez le fichier que vous avez téléchargé:

~/Downloads$ tar xfvz MySQL-python-1.X.X.tar.gz

qui va créer un répertoire à L'intérieur de votre répertoire de téléchargements appelé MySQL-python

4) cd dans le répertoire nouvellement créé.

5) Typiquement, vous ouvrez simplement le fichier README ou installez et suivez les instructions--mais généralement pour installer un module python tout ce que vous faites est:

$ sudo python setup.py install

si vous voulez regarder, il devrait y avoir un fichier appelé setup.py dans votre répertoire MySQL-python nouvellement créé, et vous invoquez ce programme pour installer le module.

notez aussi que ceci:

export PATH=$PATH:/usr/local/mysql/bin

n'est pas permanent si vous avez fait cela en ligne de commande. Vous devez mettre cette ligne dans un fichier appelé. bashrc dans votre répertoire personnel (~/or equivalently/Users / YOUR_USER_NAME). Pour voir si .bashrc existe déjà(c'est un fichier caché), exécutez la commande suivante:

$ ls -al 

et cherchez .bashrc. Si. bashrc n'existe pas, créez-la.

2
répondu 7stud 2013-04-24 05:26:40

comme d'autres l'ont mentionné avant moi....faire travailler Python avec MySQL sur un Mac est un ?@#$@ & % ^!! cauchemar.

installé Django framework sur Mac OS 10.7.5 initialement à partir du site Web original de Django et lorsque la MySQLdb ne fonctionnait pas, et après de nombreuses heures googling et d'essayer des solutions de SO, j'ai installé la pile Django de BitNami http://bitnami.com/stack/django

tout de même, got les problèmes mentionnés ci-dessus et puis certains plus...

Ce qui m'a finalement est ce que Josh recommande sur son blog: http://joshbranchaud.com/blog/2013/02/10/Errors-While-Setting-Up-Django.html

maintenant Python 2.7 est enfin connecté à MySQL 5.5

2
répondu Toren 2013-10-08 01:11:55

Le problème que vous rencontrez est que le gcc compilateur n'est pas installé sur votre Mac. Il sera installé si vous avez installé XCode. Vous aurez à télécharger gcc compilateur et l'installer manuellement. Suivez le lien ci-dessous et télécharger -

https://github.com/downloads/kennethreitz/osx-gcc-installer/GCC-10.7-v2.pkg

j'ai eu une fois ce problème d'installation de Ruby 1.9 et j'ai dû compiler ruby pour moi-même parce que Mountain Lion n'était pas soutenu à l'époque. Après avoir installé le paquet, Vérifiez l'installation par la commande gcc.

1
répondu Chan 2013-04-24 02:36:25

j'utilise Python 2.7.11:: Anaconda 2.3.0 (x86_64) sur Mac OS X 10.11.4 15E65.

Vous pouvez suivre les étapes ci-dessous:

  • Installer homebrew
  • ouvrir un terminal et exécuter: brew install mysql-connector-c
  • pip install mysql-python

alors L'Anaconda aura le mysql-python installé et vous pouvez commencer avec MySQLdb alors.

Bonne chance. Grâce.

1
répondu HelloObamama 2016-04-25 16:55:26

ce qui a fonctionné pour moi est:

LDFLAGS=-L/usr/local/opt/openssl/lib pip install mysql-python
0
répondu Donald 2018-02-02 10:30:55

pour installer PyMySQL

installer pip => sudo easy_install pip

install PyMySQL=>sudo easy_install-3.7 pymysql

commande de terminal pour vérifier si installé ou non=>pip3 list

ou

install PyMySQL=>sudo pip install PyMySQL

commande de terminal pour vérifier si installé ou non=>pip3 list

MySQL

les Beta publiques de macOS Sierra n'ont pas bien fonctionné avec MySQL 5.7.x, mais ces problèmes sont maintenant résolus en utilisant MySQL 5.7.16

MySQL ne vient pas pré-chargé avec macOS Sierra et doit être téléchargé à partir du site MySQL.

( https://dev.mysql.com/downloads/mysql/) La dernière version de MySQL 5.7.16 fonctionne avec la sortie publique de macOS.

si vous avez déjà MySQL 5.7 et que vous avez mis à jour OS de El Capitan à Sierra Je m'attends à ce que ce soit ok, mais sera intéressé si quelqu'un commentaires.

Mac OS X 10.11( x86, 64-bit), DMG Archive version (travaux sur macOS Sierra).

si vous mettez à jour depuis un OSX précédent et que vous avez une version MySQL plus ancienne, vous n'avez pas à la mettre à jour. Une chose avec les mises à jour MySQL toujours prendre un vidage de données de votre base de données au cas où les choses vont vers le Sud et avant de mettre à niveau à macOS Sierra assurez - vous que votre serveur MySQL est exécuter.

Lors du téléchargement, vous n'avez pas à vous inscrire, rechercher " Non merci, il suffit de prendre me le télécharge! - allez directement aux miroirs de téléchargement et téléchargez le logiciel à partir d'un miroir qui est le plus proche de vous.

une Fois téléchargé, ouvrez le .dmg et exécuter l'installateur.

quand l'installation est terminée, vous obtenez une boîte de dialogue avec un mot de passe mysql root - c'est un mot de passe racine MySQL pas un mot de passe macOS admin, Copiez-le et collez-le pour que vous puissiez l'utiliser. Mais j'ai trouvé que le mot de passe temporaire est assez inutile donc nous aurons besoin de le changer tout de suite.

Vous dit aussi: Si vous perdez ce mot de passe, veuillez consulter la section Comment réinitialiser le mot de passe racine dans la référence MySQL manual.(https://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html)

changer la racine MySQL mot de passe

notez que ce n'est pas la même chose que le mot de passe racine ou administrateur de macOS – c'est un mot de passe unique pour le root, utilisez - en un et rappelez-vous/notez quelque part ce que c'est.

Stop MySQL

sudo /usr/local/mysql/support-files/mysql.server stop

si arrêter jette problème de permission

Vérifiez d'abord le fichier d'erreur.

tail -f /usr/local/mysql/data/*.err

Faire un arrêt complet ou tuer le processus. Confirmer qu'aucun processus mysql n'est cours d'exécution

mysqladmin -uroot shutdown
sudo killall mysqld 

ps -ef | grep mysql

donner les autorisations

sudo chown -RL root:mysql /usr/local/mysql
sudo chown -RL mysql:mysql /usr/local/mysql/data
chmod -R 755 /usr/local/mysql/data
chmod -R 755 /usr/local/mysql/data/accountname.local.pid

or Right click->get info and change the permission for 
/usr/local/mysql/data
/usr/local/mysql/data/Pushparajas-MacBook-Pro.local.pid

Démarrer mysql

sudo mysql.server start

Démarrer en mode sans échec:

sudo mysqld_safe --skip-grant-tables

ceci sera une commande continue jusqu'à ce que le processus soit terminé donc ouvrir une autre fenêtre shell / terminal, et de se connecter avec un mot de passe temporaire généré:

mysql -u root -p
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass'

; Changez la minuscule 'MyNewPass' en ce que vous voulez – et gardez les guillemets simples.

\q

Démarrer MySQL

sudo /usr/local/mysql/support-files/mysql.server start

Starting MySQL

vous pouvez alors lancer le serveur MySQL à partir des préférences système ou via la ligne de commande.

ligne de commande Démarrer MySQL.

sudo /usr/local/mysql/support-files/mysql.server start

pour trouver la version MySQL à partir du terminal, tapez à l'invite:

/usr/local/mysql/bin/mysql -v -uroot -p

cela vous met aussi dans un dialogue interactif shell avec mySQL, tapez \q pour sortir.

Après l'installation, afin d'utiliser les commandes mysql sans taper le chemin complet vers les commandes, vous devez ajouter le répertoire mysql à votre chemin shell, (étape optionnelle)cela se fait dans votre ".bash_profile" fichier dans votre répertoire personnel, si vous n'avez pas ce fichier, créez-le en utilisant vi ou nano:

cd ; nano .bash_profile
export PATH="/usr/local/mysql/bin:$PATH"

la première commande vous amène à votre répertoire personnel et ouvre le .bash_profile ou crée un nouveau fichier s'il n'existe pas, ajoutez la ligne ci-dessus qui ajoute le chemin binaire mysql aux commandes que vous pouvez exécuter. Sortie le fichier avec le type "contrôle + x" et quand demandé enregistrer le changement en tapant "y". La dernière chose à faire ici est de recharger la coque pour que le ci-dessus fonctionne immédiatement.

source ~/.bash_profile
mysql -v

vous obtiendrez à nouveau le numéro de version, tapez juste "q" pour sortir.

Corriger l'2002 MySQL erreur de Socket

Correction de l'erreur de la socket 2002 qui se profile à l'horizon – qui est de lier où MySQL place la socket et où macOS pense qu'elle devrait être, MySQL la met dans / tmp et macOS regarde dans / var / mysql la socket est un type de fichier qui permet la communication client/serveur mysql.

sudo mkdir /var/mysql
sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock

phpMyAdmin

décommenter la ligne ci-dessous dans httpd.conf le fichier

LoadModule php7_module libexec/apache2/libphp7.so

corrigez D'abord l'erreur de la socket 2002 si vous ne l'avez pas fait depuis la section MySQL-

sudo mkdir /var/mysql
sudo ln -s /tmp/mysql.sock /var/mysql/mysql.sock

Télécharger phpMyAdmin, (https://www.phpmyadmin.net/downloads/) le zip anglais paquet conviendra à beaucoup d'utilisateurs, puis décompresse et déplace le dossier avec son contenu dans le document niveau racine(~/Sites/) renommant le dossier en ‘phpmyadmin’.

config dossier

mkdir ~/Sites/phpmyadmin/config

Modifier les autorisations

chmod o+w ~/Sites/phpmyadmin/config

exécutez la configuration dans le navigateur http://localhost/~utilisateur/phpmyadmin/setup/ ou