Se você deseja usar isso com o Python3 (por exemplo, com a versão mais recente do Django), precisará do mysqlclient, pois o MysqlDB não suporta python3. Veja esta pergunta
TD Smith
Estou usando o mysqlclient com Python 2.7 e MariaDB sem problemas até agora.
Dave Everitt
Respostas:
522
É fácil, mas difícil de lembrar a ortografia correta:
pip install mysqlclient
Se você precisar de versões 1.2.x (somente Python herdado), use pip install MySQL-python
Nota: Algumas dependências podem precisar estar em vigor ao executar o comando acima. Algumas dicas sobre como instalá-las em várias plataformas:
este funcionou, por algum motivo simples pip instalar não funciona limpo no ubuntu
Dap
No ubuntu 14.04, ocorrerá um erro "raise EnvironmentError ("% s não encontrado "% (mysql_config.path,)") e o primeiro cmd corrigiu o problema, obrigado, economize-me um pouco
zhihong
Para corrigir o error: command 'x86_64-linux-gnu-gcc' failed with exit status 1usosudo apt-get install build-essential
FelikZ
Eu me pergunto por que isso é necessário. Uma coisa me ocorre. Testei isso instalando apenas e não construindo. Você criou alguma das coisas que instalou em vez de apenas instalá-las?
precisa
Esta resposta deve ser aceita, é claro, para o Ubuntu.
Roon13
23
Primeiro
pip install pymysql
Em seguida, coloque o código abaixo em __init__.py( projectname/__init__.py)
import pymysql
pymysql.install_as_MySQLdb()
Meu ambiente é (python3.5, django1.10) e esta solução funciona para mim!
Uau, eu tenho mais de 5 horas tentando consertar isso sem sucesso. Esta é a única solução que funcionou no Ubuntu 16.04 / python 3.5 / Django 1.11. Obrigado por compartilhar isso.
Paullo 16/11
isso não funciona para mim, meu ambiente é python 3.7 e django 2.2. Por favor, me ajude.
Rajen K Bhagat
Isso deve estar lá em cima. Estou procurando uma solução há horas. Eu tenho um virtualenv com python 2.7 executando o django 1.6. Não consegui instalar o MySQL-python nem o mysqlclient. Não importa o que eu tentei, estava recebendo um "erro fatal: mysql.h". Este fez o truque.
Rolandaven #
22
Eu tive problemas ao instalar a versão de 64 bits do MySQLdb no Windows via Pip (problema na compilação de fontes) [versão de 32 bits instalada ok]. Conseguiu instalar o MySQLdb compilado a partir do arquivo .whl disponível em http://www.lfd.uci.edu/~gohlke/pythonlibs/
Acompanhamento: se você possui uma versão de 64 bits do Python instalada, deseja instalar a versão AMD de MySQLdb de 64 bits a partir do link acima [isto é, mesmo se você tiver um processador Intel]. Se você tentar instalar a versão de 32 bits, acho que você recebe o erro de roda não suportado nos comentários abaixo.
Eu precisava do cliente MySQL. pip install mysqlclient-1.3.7-cp27-none-win_amd64.whltrabalhando muito bem.
Arsenik
2
Fui para http://www.lfd.uci.edu/~gohlke/pythonlibs/#mysql-python para baixar o whlarquivo (eu dl'd 64 bits para corresponder à minha instalação do Python de 64 bits). Salvei o arquivo no c:/diretório e o executei. pip install c:/MySQL_python-1.2.5-cp27-none-win_amd64.whlEle foi instalado em segundos e estava pronto. Muito fácil!
Curtisp # 11/16
Funcionou para mim também, pois a instalação do pip pelo nome estava falhando.
A questão foi mencionada especificamente pip. Que distribuição você está usando? No Fedora 24, isso funciona para instalar o módulo via pip: sudo dnf install python python-devel mysql-devel redhat-rpm-config gcc,sudo pip install MySQL-python
Marian
Entendo que a pergunta é via pip, mas pessoalmente não consegui resolvê-la usando o pip. Por isso, acabei de compartilhar minha solução alternativa, que corrigiu o problema para mim. Estou usando o centos 6.8. A lista pip não mostra nada relacionado ao mysql e quando eu faço "pip install MySQL-python", ele gera um erro. Agora, curiosamente, descobri que, uma vez que instalamos através do yum i: e "yum install MySQL-python", sou capaz de importar o MySQLdb. Também feito uma vez com a instalação do yum, eu consegui instalar via pip sem erros.
Ashwin
6
Vá para pycharm e vá para a configuração padrão -> pip (clique duas vezes) - pymsqldb ..--> install - após instalar o uso em um programa como este
import pymysql asMySQLdb# Open database connection
db =MySQLdb.connect("localhost","root","root","test")# prepare a cursor object using cursor() method
cursor = db.cursor()# execute SQL query using execute() method.
cursor.execute("show tables")# Fetch a single row using fetchone() method.
data = cursor.fetchall()print(data)# disconnect from server
db.close()
Eu também tive o mesmo problema. Siga estas etapas se você estiver no Windows. Vá para: 1. Meu computador 2. Propriedades do sistema 3. Configurações avançadas do sistema 4. Na guia "Avançado", clique no botão "Variáveis de ambiente" 5. Em seguida, em Variáveis do sistema, você deve adicionar / alterar as seguintes variáveis: PYTHONPATH e caminho. Aqui está uma pasta de como minhas variáveis se parecem: python path:
A resposta acima é ótima, mas pode haver alguns problemas quando usamos o pip para instalar o MySQL-python no Windows
por exemplo, ele precisa de alguns arquivos associados ao Visual Stdio . Uma solução está instalando o VS2008 ou 2010 ... Obviamente, custa muito.
Outra maneira é a resposta de @ bob90937. Estou aqui para fazer algo a acrescentar.
com http://www.lfd.uci.edu/~gohlke/pythonlibs , você pode baixar muitos binários do Windows de muitos pacotes científicos de extensão de código-fonte aberto para a distribuição oficial do CPython da linguagem de programação Python.
Voltar ao tópico, podemos escolher o MySQL-python (py2) ou Mysqlclient (py3) e usar o pip install para instalar. nos dá uma grande comodidade!
Resposta não muito boa. Você assume que a versão Python é 3 e o sistema operacional é Debian / Ubuntu, mas você não sabe disso. Aguarde até que o autor adicione mais detalhes.
Phd 12/07
0
Meu ambiente é:
Windows 10 Pro,
Python 3.7 (python-3.7.1-amd64.exe),
MySQL 8.0 (mysql-installer-web-community-8.0.13.0.msi)
Instalação do pip mysqlclient-1.3.13-cp37-cp37m-win_amd64.whl
na verdade, siga a resposta de @Nick T não funciona para mim, eu tento apt-get install python-mysqldbtrabalhar para mim
root@2fb0da64a933:/home/test_scrapy# apt-get install python-mysqldbReadingpackage lists...DoneBuilding dependency tree
Reading state information...DoneThe following additional packages will be installed:
libmariadbclient18 mysql-common
Suggested packages:default-mysql-server |virtual-mysql-server python-egenix-mxdatetime python-mysqldb-dbg
The following NEW packages will be installed:
libmariadbclient18 mysql-common python-mysqldb
0 upgraded,3 newly installed,0 to removeand29not upgraded.Need to get843 kB of archives.Afterthis operation,4611 kB of additional disk space will be used.Do you want to continue?[Y/n] y
Get:1 http://deb.debian.org/debian stretch/main amd64 mysql-common all 5.8+1.0.2 [5608 B]Get:2 http://deb.debian.org/debian stretch/main amd64 libmariadbclient18 amd64 10.1.38-0+deb9u1 [785 kB]Get:3 http://deb.debian.org/debian stretch/main amd64 python-mysqldb amd64 1.3.7-1.1 [52.1 kB] Fetched843 kB in23s(35.8 kB/s)
debconf: delaying package configuration, since apt-utils isnot installed
Selecting previously unselected package mysql-common.(Reading database ...13223 files and directories currently installed.)Preparing to unpack .../mysql-common_5.8+1.0.2_all.deb ...Unpacking mysql-common (5.8+1.0.2)...Selecting previously unselected package libmariadbclient18:amd64.Preparing to unpack .../libmariadbclient18_10.1.38-0+deb9u1_amd64.deb ...Unpacking libmariadbclient18:amd64 (10.1.38-0+deb9u1)...Selecting previously unselected package python-mysqldb.Preparing to unpack .../python-mysqldb_1.3.7-1.1_amd64.deb ...Unpacking python-mysqldb (1.3.7-1.1)...Setting up mysql-common (5.8+1.0.2)...
update-alternatives:using/etc/mysql/my.cnf.fallback to provide /etc/mysql/my.cnf (my.cnf)inauto mode
Setting up libmariadbclient18:amd64 (10.1.38-0+deb9u1)...Processing triggers for libc-bin (2.24-11+deb9u3)...Setting up python-mysqldb (1.3.7-1.1)...
root@2fb0da64a933:/home/test_scrapy# python Python2.7.13(default,Nov242017,17:33:09)[GCC 6.3.020170516] on linux2
Type"help","copyright","credits"or"license"for more information.>>>importMySQLdb>>>
Respostas:
É fácil, mas difícil de lembrar a ortografia correta:
Se você precisar de versões 1.2.x (somente Python herdado), use
pip install MySQL-python
Nota: Algumas dependências podem precisar estar em vigor ao executar o comando acima. Algumas dicas sobre como instalá-las em várias plataformas:
Ubuntu 14, Ubuntu 16, Debian 8.6 (Jessie)
Fedora 24:
Mac OS
se isso falhar, tente
fonte
pip search mysql
e encontrar o que precisa na saída.pip search mysqldb
e não o encontrei. Assim, eu marquei esta resposta com +1.A partir de um novo sistema Ubuntu 14.04.2, esses dois comandos foram necessários:
Apenas fazer a "instalação do pip" por si só não funcionou.
Em http://codeinthehole.com/writing/how-to-set-up-mysql-for-python-on-ubuntu/
fonte
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
usosudo apt-get install build-essential
Primeiro
Em seguida, coloque o código abaixo em
__init__.py
(projectname/__init__.py
)Meu ambiente é (python3.5, django1.10) e esta solução funciona para mim!
Espero que isto ajude!!
fonte
Eu tive problemas ao instalar a versão de 64 bits do MySQLdb no Windows via Pip (problema na compilação de fontes) [versão de 32 bits instalada ok]. Conseguiu instalar o MySQLdb compilado a partir do arquivo .whl disponível em http://www.lfd.uci.edu/~gohlke/pythonlibs/
O arquivo .whl pode ser instalado via pip como documento em https://pip.pypa.io/en/latest/user_guide/#installing-from-wheels
Por exemplo, se você salvar no,
C:/
poderá instalar viapip install c:/MySQL_python-1.2.5-cp27-none-win_amd64.whl
Acompanhamento: se você possui uma versão de 64 bits do Python instalada, deseja instalar a versão AMD de MySQLdb de 64 bits a partir do link acima [isto é, mesmo se você tiver um processador Intel]. Se você tentar instalar a versão de 32 bits, acho que você recebe o erro de roda não suportado nos comentários abaixo.
fonte
pip install mysqlclient-1.3.7-cp27-none-win_amd64.whl
trabalhando muito bem.whl
arquivo (eu dl'd 64 bits para corresponder à minha instalação do Python de 64 bits). Salvei o arquivo noc:/
diretório e o executei.pip install c:/MySQL_python-1.2.5-cp27-none-win_amd64.whl
Ele foi instalado em segundos e estava pronto. Muito fácil!bem, isso funcionou para mim:
isto é para python 3.x
fonte
Tentei todas as opções, mas não consegui fazê-lo funcionar na plataforma Redhat. Fiz o seguinte para fazê-lo funcionar: -
Depois que o pacote foi instalado, foi possível importar o módulo da seguinte maneira no intérprete: -
fonte
pip
. Que distribuição você está usando? No Fedora 24, isso funciona para instalar o módulo via pip:sudo dnf install python python-devel mysql-devel redhat-rpm-config gcc
,sudo pip install MySQL-python
Vá para pycharm e vá para a configuração padrão -> pip (clique duas vezes) - pymsqldb ..--> install - após instalar o uso em um programa como este
fonte
Se você estiver usando Raspberry Pi [Raspbian OS]
É necessário instalar o comando pip primeiro
Para que apenas instale Sequently
fonte
Você pode acessar este site para baixar o pacote.
fonte
Se você não conseguir instalar o mysqlclient, também poderá instalar o pymysql :
pip install pymysql
Isso funciona da mesma forma que o MySqldb . Depois disso, use o pymysql todo em vez do MySQLdb
fonte
Eu também tive o mesmo problema. Siga estas etapas se você estiver no Windows. Vá para: 1. Meu computador 2. Propriedades do sistema 3. Configurações avançadas do sistema 4. Na guia "Avançado", clique no botão "Variáveis de ambiente" 5. Em seguida, em Variáveis do sistema, você deve adicionar / alterar as seguintes variáveis: PYTHONPATH e caminho. Aqui está uma pasta de como minhas variáveis se parecem: python path:
caminho:
Consulte este link para referência
fonte
A resposta acima é ótima, mas pode haver alguns problemas quando usamos o pip para instalar o MySQL-python no Windows
por exemplo, ele precisa de alguns arquivos associados ao Visual Stdio . Uma solução está instalando o VS2008 ou 2010 ... Obviamente, custa muito.
Outra maneira é a resposta de @ bob90937. Estou aqui para fazer algo a acrescentar.
com http://www.lfd.uci.edu/~gohlke/pythonlibs , você pode baixar muitos binários do Windows de muitos pacotes científicos de extensão de código-fonte aberto para a distribuição oficial do CPython da linguagem de programação Python.
Voltar ao tópico, podemos escolher o MySQL-python (py2) ou Mysqlclient (py3) e usar o pip install para instalar. nos dá uma grande comodidade!
fonte
Para Python3, eu precisava fazer isso:
fonte
pip install mysql-connector-python
conforme observado na documentação:https://dev.mysql.com/doc/connector-python/en/connector-python-installation-binary.html
fonte
no RHEL 7:
sudo yum install yum-utils mariadb-devel python-pip python-devel gcc
sudo /bin/pip2 install MySQL-python
fonte
Se você possui o Windows instalado no seu sistema, digite o seguinte comando no cmd:
se o comando acima não funcionar, tente usar:
Agora, se os comandos acima não concluírem o trabalho, tente usar:
É isso que você está pronto para ir agora.
fonte
Muitas das respostas dadas aqui são bastante confusas, então tentarei colocar de maneira simples. Isso me ajudou a instalar este
e use o seguinte comando no arquivo python
Dessa forma, você pode usar o MySQLdb sem problemas.
fonte
Se o pip3 não estiver funcionando, você pode tentar:
fonte
Meu ambiente é:
Instalação do pip mysqlclient-1.3.13-cp37-cp37m-win_amd64.whl
funciona para mim.
fonte
na verdade, siga a resposta de @Nick T não funciona para mim, eu tento
apt-get install python-mysqldb
trabalhar para mimfonte