conector MySQL / python ImportError: Nenhum módulo chamado 'mysql'

3

Sou muito novo no Ubuntu / Linux e Python, então é totalmente possível que eu esteja perdendo algo óbvio aqui. Estou executando o Ubuntu 16.04 LTS, versão do servidor.

Acabei de instalar o conector oficial do MySQL / python (2.1.7, versão python3) usando dpkg -i [package-name].deb (obviamente substituí [package-name] pelo nome real). Está listado como compatível com o Python 3.5, que é a versão que tenho. Quando tento verificar a instalação através do interpretador Python usando import mysql.connector , acabei de receber o seguinte erro:

 >>> import mysql.connector
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named 'mysql'

Em uma pergunta semelhante, eu vi que sugeriu que o conector pode não ter sido instalado corretamente se o Python não estiver no caminho. Eu não parecia ter problemas durante a instalação; o arquivo python3 está em /usr/bin , que está definitivamente no caminho, mas parece ser um link para o arquivo python3.5 no mesmo local. A execução do comando which python3 fornece a saída usr/bin/python3 , mas a execução de which python não gera saída.

O pacote aparentemente também continha uma biblioteca C, que parece ter sido instalada em usr/lib/python3/dist-packages . Nada mais nesse diretório é chamado de qualquer coisa relacionada ao MySQL.

O que devo procurar para saber se é um problema com a instalação do conector ou com o próprio Python? E como faço para corrigir isso?

    
por purplecho 14.03.2018 / 18:39

1 resposta

3

A solução é instalar o módulo correspondente do Python 3:

sudo apt-get install python3-mysql.connector

Corrige o erro import mysql.connector :

$ python3
Python 3.5.2 (default, Nov 23 2017, 16:37:01) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import mysql.connector
>>> 

E semelhante para o Python 2:

sudo apt-get install python-mysql.connector

$ python2
Python 2.7.12 (default, Dec  4 2017, 14:50:18) 
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import mysql.connector
>>> 
    
por N0rbert 14.03.2018 / 18:45