para example python mysql-connector-python

example - python sql mysql



No se puede encontrar el directorio de inclusiĆ³n de Protobuf durante la instalaciĆ³n de mysql-connector over pip (8)

A partir de la versión 2.2.3, Connector / Python usa una extensión C ++ que interactúa con un servidor MySQL con el complemento X habilitado, utilizando Protobuf como formato de intercambio de datos.

Por lo tanto, debe configurar dónde está instalado Protobuf en su sistema (las rutas binarias de biblioteca, include y protoc).

Requerimientos

  • Compilador AC / C ++, como gcc
  • Protobuf C ++ (versión> = 2.6.0)
  • Archivos de desarrollo de Python

Instalación

Tienes dos opciones cuando usas pip + pypi:

1) Establezca las variables de entorno para MYSQLXPB_PROTOBUF_INCLUDE_DIR , MYSQLXPB_PROTOBUF_LIB_DIR y MYSQLXPB_PROTOC .

2) Agregue --install-option para configurar estas opciones al usar pip:

shell> python install mysql-connector --install-option=''--with-protobuf-include-dir=<path>'' --install-option=''--with-protobuf-lib-dir=<path>'' --install-option=''--with-protoc=<path>''

Importante: tenga en cuenta que 2.2.3 es una versión de desarrollo.

Saqué el código mysql-connector-python y cuando ejecuto python ./setup.py build el siguiente error:

Unable to find Protobuf include directory.

pip install Protobuf fue inútil

¿Como puedó resolver esté problema?


En macOS, si usas Homebrew :

$ brew install protobuf $ export MYSQLXPB_PROTOC=/usr/local/opt/protobuf/bin/protoc $ export MYSQLXPB_PROTOBUF_INCLUDE_DIR=/usr/local/opt/protobuf/include/ $ export MYSQLXPB_PROTOBUF_LIB_DIR=/usr/local/opt/protobuf/lib/ $ pip3 install mysql-connector


Encontré que este error ocurre desde la versión 2.2.3. Puedes evitar este problema usando la versión 2.1.6.

pip install mysql-connector==2.1.6

Intenta arriba.


Estoy en WIN 7 64-bit , python 27. Este comando funciona para mí y parece más apropiado, particularmente cuando v2.2.3 es una versión de desarrollo.

pip install mysql-connector==2.1.4


Para instalar protobuf con puertos mac, hice lo siguiente

Instalación de protobuf:

port install protobuf-cpp

Declara donde está protobuf

export MYSQLXPB_PROTOBUF_LIB_DIR=/opt/local/lib export MYSQLXPB_PROTOC=/opt/local/bin/protoc export MYSQLXPB_PROTOBUF_INCLUDE_DIR=/opt/local/include

Instalando el conector

pip install mysql-connector


Por alguna razón, me di cuenta de que pip install mysql-connector intentó instalar v2.2.3, lo cual no queremos. Por lo tanto, pip install mysql-connector==2.1.6 específicamente pip install mysql-connector==2.1.6 y se instaló sin errores. Tenga en cuenta también que estoy usando un virtualenv ejecutando python 3.6.1. Lo instalé allí. Aquí está la documentación sobre la instalación de módulos de python específicos que me ayudaron. https://docs.python.org/3/installing/index.html


También tengo este problema en mi Ubuntu 16.04 y finalmente puedo instalar mysql-connector 2.2.3 con los siguientes pasos:

  1. Instale estos paquetes a través del gestor de paquetes de Ubuntu:

    sudo apt install libprotobuf-dev protobuf-compiler

  2. Establecer estas variables de entorno:

    export MYSQLXPB_PROTOC=/usr/bin/protoc export MYSQLXPB_PROTOBUF_INCLUDE_DIR=/usr/include/google/protobuf export MYSQLXPB_PROTOBUF_LIB_DIR=/usr/lib/x86_64-linux-gnu

  3. Instale el paquete del conector mysql a través del administrador de paquetes de Python:

    pip install mysql-connector

Espero que esto ayude.