Si está buscando usar esto con Python3 (por ejemplo, con la versión más reciente de Django) necesitará mysqlclient ya que MysqlDB no es compatible con python3. Ver esta pregunta
TD Smith
Estoy usando mysqlclient con Python 2.7 y MariaDB sin problemas hasta ahora.
Dave Everitt
Respuestas:
522
Es fácil de hacer, pero difícil recordar la ortografía correcta:
pip install mysqlclient
Si necesita versiones 1.2.x (solo Python heredado), use pip install MySQL-python
Nota: Algunas dependencias pueden tener que estar en su lugar al ejecutar el comando anterior. Algunos consejos sobre cómo instalarlos en varias plataformas:
este funcionó, por alguna razón la simple instalación de pip no funciona limpia en ubuntu
Dap
En ubuntu 14.04, recibirá un error "raise EnvironmentError ("% s no encontrado "% (mysql_config.path,)", y el primer cmd solucionó el problema, gracias,
ahórreme
Para arreglar el error: command 'x86_64-linux-gnu-gcc' failed with exit status 1usosudo apt-get install build-essential
FelikZ
Me pregunto por qué se necesita esto. Se me ocurre una cosa. Probé esto instalando solo y no construyendo. ¿Construyó alguna de las cosas que instaló en lugar de solo instalarlas?
Ray Kiddy
Esta respuesta debe ser aceptada, por supuesto, para Ubuntu.
Roon13
23
primero
pip install pymysql
Luego ponga el siguiente código en __init__.py( projectname/__init__.py)
import pymysql
pymysql.install_as_MySQLdb()
¡Mi entorno es (python3.5, django1.10) y esta solución funciona para mí!
Woow, he renunciado a más de 5 horas tratando de arreglar esto sin éxito. Esta es la única solución que funcionó en Ubuntu 16.04 / python 3.5 / Django 1.11. Gracias por compartir esto.
Paullo
esto no funciona para mí, mi entorno es python 3.7 y django 2.2. Por favor, ayúdame.
Rajen K Bhagat el
Esto debería estar ahí arriba. He estado buscando una solución durante horas. Tengo un virtualenv con python 2.7 ejecutando django 1.6. No pude instalar MySQL-python ni mysqlclient. No importaba lo que intentara, recibía un "error fatal: mysql.h". Este hizo el truco.
rolandsaven
22
Tuve problemas para instalar la versión de 64 bits de MySQLdb en Windows a través de Pip (fuentes de compilación problemáticas) [la versión de 32 bits está bien instalada]. Logré instalar el MySQLdb compilado del archivo .whl disponible en http://www.lfd.uci.edu/~gohlke/pythonlibs/
Seguimiento: si tiene instalada una versión de Python de 64 bits, entonces desea instalar la versión AMD de 64 bits de MySQLdb desde el enlace anterior [es decir, incluso si tiene un procesador Intel]. Si en su lugar intenta instalar la versión de 32 bits, creo que obtiene el error de rueda no compatible en los comentarios a continuación.
Necesitaba un cliente MySQL. pip install mysqlclient-1.3.7-cp27-none-win_amd64.whltrabajando muy bien
arsenik
2
Fui a http://www.lfd.uci.edu/~gohlke/pythonlibs/#mysql-python para descargar el whlarchivo (hice 64 bits para que coincida con mi instalación de Python de 64 bits). Guarde el archivo en el c:/directorio y lo ejecuté. pip install c:/MySQL_python-1.2.5-cp27-none-win_amd64.whlSe instaló en segundos y estaba listo. ¡Demasiado fácil!
Curtisp
También funcionó para mí, ya que la instalación de pip por nombre estaba fallando.
La pregunta se menciona específicamente pip. ¿Qué distribución estás usando? En Fedora 24, esta obra para instalar el módulo a través de pepita: sudo dnf install python python-devel mysql-devel redhat-rpm-config gcc,sudo pip install MySQL-python
Marian
Entiendo que la pregunta es a través de pip, pero personalmente no pude resolverla usando pip. Por lo tanto, acabo de compartir mi solución que solucionó el problema para mí. Estoy usando centos 6.8. pip list no muestra nada relacionado con mysql y cuando hago "pip install MySQL-python" arrojó un error. Ahora, curiosamente, descubrí que una vez que instalamos a través de yum i: e "yum install MySQL-python" puedo importar MySQLdb. También una vez que terminé con la instalación de yum pude instalar a través de pip sin ningún error.
Ashwin
6
Vaya a pycharm y luego vaya a la configuración predeterminada -> pip (doble clic) - pymsqldb ..--> install --después de instalar el uso en un 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()
También tuve el mismo problema. Sigue estos pasos si estás en Windows. Vaya a: 1.Mi computadora 2. Propiedades del sistema 3.Advance la configuración del sistema 4. En la pestaña "Avanzado", haga clic en el botón que dice "Variables de entorno" 5. Luego, en Variables del sistema, debe agregar / cambiar las siguientes variables: PYTHONPATH y camino. Aquí hay una pasta de cómo se ven mis variables: ruta de Python:
La respuesta anterior es excelente, pero puede haber algunos problemas cuando usamos pip para instalar MySQL-python en Windows
por ejemplo, necesita algunos archivos que estén asociados con Visual Stdio . Una solución es instalar VS2008 o 2010 ... Obviamente, cuesta demasiado.
Otra forma es la respuesta de @ bob90937. Estoy aquí para hacer algo para agregar.
con http://www.lfd.uci.edu/~gohlke/pythonlibs , puede descargar muchos binarios de Windows de muchos paquetes de extensión científica de código abierto para la distribución oficial de CPython del lenguaje de programación Python.
Volviendo al tema, podemos elegir MySQL-python (py2) o Mysqlclient (py3) y usar pip install para instalar. nos da una gran comodidad!
No muy buena respuesta. Asume que la versión de Python es 3 y el sistema operativo es Debian / Ubuntu, pero no lo sabe. Espere hasta que el autor agregue más detalles.
phd
0
Mi entorno es:
Windows 10 Pro,
Python 3.7 (python-3.7.1-amd64.exe),
MySQL 8.0 (mysql-installer-web-community-8.0.13.0.msi)
en realidad, sigue la respuesta de @Nick T no funciona para mí, intento apt-get install python-mysqldbtrabajar para mí
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>>>
Respuestas:
Es fácil de hacer, pero difícil recordar la ortografía correcta:
Si necesita versiones 1.2.x (solo Python heredado), use
pip install MySQL-python
Nota: Algunas dependencias pueden tener que estar en su lugar al ejecutar el comando anterior. Algunos consejos sobre cómo instalarlos en varias plataformas:
Ubuntu 14, Ubuntu 16, Debian 8.6 (jessie)
Fedora 24:
Mac OS
si eso falla, intente
fuente
pip search mysql
y encontrar el que necesita en la salida.pip search mysqldb
y no lo encontré. Por lo tanto, hago +1 esta respuesta.A partir de un nuevo sistema Ubuntu 14.04.2, se necesitaban estos dos comandos:
Simplemente hacer la "instalación de pip" por sí solo no funcionó.
Desde http://codeinthehole.com/writing/how-to-set-up-mysql-for-python-on-ubuntu/
fuente
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1
usosudo apt-get install build-essential
primero
Luego ponga el siguiente código en
__init__.py
(projectname/__init__.py
)¡Mi entorno es (python3.5, django1.10) y esta solución funciona para mí!
¡¡Espero que esto ayude!!
fuente
Tuve problemas para instalar la versión de 64 bits de MySQLdb en Windows a través de Pip (fuentes de compilación problemáticas) [la versión de 32 bits está bien instalada]. Logré instalar el MySQLdb compilado del archivo .whl disponible en http://www.lfd.uci.edu/~gohlke/pythonlibs/
El archivo .whl se puede instalar a través de pip como documento en https://pip.pypa.io/en/latest/user_guide/#installing-from-wheels
Por ejemplo, si guarda en
C:/
el puede instalar a través depip install c:/MySQL_python-1.2.5-cp27-none-win_amd64.whl
Seguimiento: si tiene instalada una versión de Python de 64 bits, entonces desea instalar la versión AMD de 64 bits de MySQLdb desde el enlace anterior [es decir, incluso si tiene un procesador Intel]. Si en su lugar intenta instalar la versión de 32 bits, creo que obtiene el error de rueda no compatible en los comentarios a continuación.
fuente
pip install mysqlclient-1.3.7-cp27-none-win_amd64.whl
trabajando muy bienwhl
archivo (hice 64 bits para que coincida con mi instalación de Python de 64 bits). Guarde el archivo en elc:/
directorio y lo ejecuté.pip install c:/MySQL_python-1.2.5-cp27-none-win_amd64.whl
Se instaló en segundos y estaba listo. ¡Demasiado fácil!bueno, esto funcionó para mí:
esto es para python 3.x
fuente
Probé toda la opción pero no pude hacer que funcionara en la plataforma Redhat. Hice lo siguiente para que funcione: -
Una vez que se instaló el paquete, se pudo importar el módulo de la siguiente manera en el intérprete: -
fuente
pip
. ¿Qué distribución estás usando? En Fedora 24, esta obra para instalar el módulo a través de pepita:sudo dnf install python python-devel mysql-devel redhat-rpm-config gcc
,sudo pip install MySQL-python
Vaya a pycharm y luego vaya a la configuración predeterminada -> pip (doble clic) - pymsqldb ..--> install --después de instalar el uso en un programa como este
fuente
Si está utilizando Raspberry Pi [Raspbian OS]
Es necesario instalar el comando pip al principio
De modo que solo instale con frecuencia
fuente
Puede ir a este sitio web para descargar el paquete.
fuente
Si no puede instalar mysqlclient , también puede instalar pymysql :
pip install pymysql
Esto funciona igual que MySqldb . Después de eso, use pymysql por todas partes en lugar de MySQLdb
fuente
También tuve el mismo problema. Sigue estos pasos si estás en Windows. Vaya a: 1.Mi computadora 2. Propiedades del sistema 3.Advance la configuración del sistema 4. En la pestaña "Avanzado", haga clic en el botón que dice "Variables de entorno" 5. Luego, en Variables del sistema, debe agregar / cambiar las siguientes variables: PYTHONPATH y camino. Aquí hay una pasta de cómo se ven mis variables: ruta de Python:
camino:
Vea este enlace para referencia
fuente
La respuesta anterior es excelente, pero puede haber algunos problemas cuando usamos pip para instalar MySQL-python en Windows
por ejemplo, necesita algunos archivos que estén asociados con Visual Stdio . Una solución es instalar VS2008 o 2010 ... Obviamente, cuesta demasiado.
Otra forma es la respuesta de @ bob90937. Estoy aquí para hacer algo para agregar.
con http://www.lfd.uci.edu/~gohlke/pythonlibs , puede descargar muchos binarios de Windows de muchos paquetes de extensión científica de código abierto para la distribución oficial de CPython del lenguaje de programación Python.
Volviendo al tema, podemos elegir MySQL-python (py2) o Mysqlclient (py3) y usar pip install para instalar. nos da una gran comodidad!
fuente
Para Python3 necesitaba hacer esto:
fuente
pip install mysql-connector-python
como se indica en la documentación:https://dev.mysql.com/doc/connector-python/en/connector-python-installation-binary.html
fuente
en RHEL 7:
sudo yum install yum-utils mariadb-devel python-pip python-devel gcc
sudo /bin/pip2 install MySQL-python
fuente
Si tiene Windows instalado en su sistema, escriba el siguiente comando en cmd:
si el comando anterior no funciona, intente usar:
Ahora, si los comandos anteriores no hacen el trabajo, intente usar:
Eso es todo lo que está bien para ir ahora.
fuente
Muchas de las respuestas dadas aquí son bastante confusas, así que intentaré decirlo de manera simple. Me ayudó a instalar esto
y luego use el siguiente comando en el archivo python
De esta manera, puede usar MySQLdb sin ningún problema.
fuente
Si pip3 no funciona, puedes probar:
fuente
Mi entorno es:
pip install mysqlclient-1.3.13-cp37-cp37m-win_amd64.whl
funciona para mi.
fuente
en realidad, sigue la respuesta de @Nick T no funciona para mí, intento
apt-get install python-mysqldb
trabajar para mífuente