pip install mysqlclient devuelve “error fatal C1083: no se puede abrir el archivo: ‘mysql.h’: no ​​existe tal archivo o directorio

Aquí está este problema: bash instalar mysqlclient así.

C: \ Users \ amccommon349> pip install mysqlclient Recostackción de mysqlclient Utilizando en caché https ://files.pythonhosted.

Instalación de paquetes recogidos: mysqlclient

Ejecutando setup.py install for mysqlclient … error

Complete output from command c:\users\amccommon349\appdata\local\programs\python\python36\python.exe -u -c "import setuptools, tokenize;__file__='C:\\Users\\AMCCOM~1\\AppData\\Local\\Temp\\pip-install-qcgo48hf\\mysqlclient\\setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record C:\Users\AMCCOM~1\AppData\Local\Temp\pip-record-q4yoftj8\install-record.txt --single-version-externally-managed --compile: 

c: \ users \ amccommon349 \ appdata \ local \ programs \ python \ python36 \ lib \ distutils \ d ist.py:261: Usuario: Opción de distribución desconocida: ‘long_description_content_ type’

  warnings.warn(msg) running install running build running build_py creating build creating build\lib.win-amd64-3.6 copying _mysql_exceptions.py -> build\lib.win-amd64-3.6 creating build\lib.win-amd64-3.6\MySQLdb copying MySQLdb\__init__.py -> build\lib.win-amd64-3.6\MySQLdb copying MySQLdb\compat.py -> build\lib.win-amd64-3.6\MySQLdb copying MySQLdb\connections.py -> build\lib.win-amd64-3.6\MySQLdb copying MySQLdb\converters.py -> build\lib.win-amd64-3.6\MySQLdb copying MySQLdb\cursors.py -> build\lib.win-amd64-3.6\MySQLdb copying MySQLdb\release.py -> build\lib.win-amd64-3.6\MySQLdb copying MySQLdb\times.py -> build\lib.win-amd64-3.6\MySQLdb creating build\lib.win-amd64-3.6\MySQLdb\constants copying MySQLdb\constants\__init__.py -> build\lib.win-amd64-3.6\MySQLdb\constants copying MySQLdb\constants\CLIENT.py -> build\lib.win-amd64-3.6\MySQLdb\constants copying MySQLdb\constants\CR.py -> build\lib.win-amd64-3.6\MySQLdb\constants copying MySQLdb\constants\ER.py -> build\lib.win-amd64-3.6\MySQLdb\constants copying MySQLdb\constants\FIELD_TYPE.py -> build\lib.win-amd64-3.6\MySQLdb\constants copying MySQLdb\constants\FLAG.py -> build\lib.win-amd64-3.6\MySQLdb\constants copying MySQLdb\constants\REFRESH.py -> build\lib.win-amd64-3.6\MySQLdb\constants 

corriendo build_ext

 building '_mysql' extension creating build\temp.win-amd64-3.6 creating build\temp.win-amd64-3.6\Release C:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.14.26428\bin\HostX86\x64\cl.exe /c/nologo/Ox /W3 /GL /DNDEBUG /MD -Dversion_info=(1,3,13,'final',0) -D__version__=1.3.13 "-IC:\Program Files (x86)\MySQL\MySQL Connector C 6.1\include" -Ic:\users\amccommon349\appdata\local\programs\python\python36\include -Ic:\users\amccommon349\appdata\local\programs\python\python36\include "-IC:\Program Files (x86)\Microsoft Visual Studio\2017\BuildTools\VC\Tools\MSVC\14.14.26428\include" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6.1\include\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\um" "-IC:\ProgramFiles (x86)\Windows Kits\10\include\10.0.17134.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.17134.0\cppwinrt" /Tc_mysql.c /Fobuild\temp.win-amd64-3.6\Release\_mysql.obj /Zl _mysql.c _mysql.c(29): fatal error C1083: Cannot open include file: 'mysql.h': No such file or directory error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\BuildTools\\VC\\Tools\\MSVC\\14.14.26428\\bin\\HostX86\\x64\\cl.exe' failed with exit status 2 

Me aseguré de tener todos los archivos necesarios de las herramientas de comstackción de Visual Studio, descargué el conector mysql-python y actualicé mis herramientas de configuración y pip. Soy un principiante completo de esto y agradecería cualquier información sobre cómo solucionar este error.

Puede descargar archivos binarios no oficiales de Windows para su versión de Python usando https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient . Luego instálelo usando pip. De esta manera, podrá evitar la molestia de lidiar con las herramientas de construcción de visual studio.

Simplemente descargue el archivo mysqlclient.whl que sea más apropiado para usted. Creo que en tu caso será

mysqlclient ‑ 1.3.13 ‑ cp36 ‑ cp36m ‑ win_amd64.whl

y correr

 pip install "path to the downloaded .whl file" 

Este error se produce cuando se intenta instalar mysqlclient para python32 en entornos de 64 bits. Desinstale python y vuelva a instalar la versión de 64 bits. Entonces pip install mysqlclient se ejecutará sin errores.

Este es un problema con la versión de 64 bits de python en Windows 10. Lo siguiente me solucionó el problema.

  1. Instale la versión de 32 bits de python para Windows (versión actual 3.7.1)
  2. Instale las herramientas de creación de visual studio https://visualstudio.microsoft.com/downloads/#build-tools-for-visual-studio-2017 para C ++
  3. Instale la versión 6.1.11 del conector mysql de 32 bits desde https://downloads.mysql.com/archives/cc/

Después de esto pude instalar mysqlclient con pip install mysqlclint .

Esperamos que alguien encuentre una mejor solución que no requiera una baja de 32 bits porque no es una buena solución, simplemente funciona. Encontré una forma de solucionar el problema de mysql, pero me encontré con el problema nuevamente al intentar instalar canales. Parece que Python de 64 bits está buscando bibliotecas de 32 bits en lugar de bibliotecas de 64 bits en Windows. Hasta ahora, esta solución ha resuelto todos mis problemas de comstackción de Python en Windows.

Tuve este problema (exactamente el mismo error) y probé todas las soluciones mencionadas anteriormente, y ninguno de ellos funcionó (al menos para mí), en realidad estaba a punto de sacarme el pelo de este problema hasta que encontré la solución de una manera muy rara. Manera simple y estúpida !! .

Realicé los siguientes pasos para que el problema se resolviera y la vida volviera a ser dulce.

Primero instalé MySQL Connector/C desde aquí

Segundo (una vez finalizada la instalación) copié la carpeta MySQL Connector C 6.1 de Program files/MySQL en Program files (x86)/MySQL

tenga en cuenta que es posible que tenga que crear la carpeta MySQL si no existe en Program files (x86) (no existía para mí)

Tan simple como eso, funcionó para mí, parece que para algunas (o todas) las ventanas de 64 bits, pip o más probablemente el mysqlclient configuración mysqlclient solo busca en la carpeta Program files (x86) algunos archivos MySQL (como ‘mysql.h’ ) y no busca Program files y, como no encuentra nada en los Program files (x86) genera el error muy tonto. no lo es

En la línea de comandos, simplemente escriba:

 python -- 

en lugar de:

 python --version 

(Esto debería mostrar más detalles sobre la versión, incluso si es de 32 o 64 bits)