ImportError:没有名为'MySQL'的模块

时间:2015-10-01 00:25:34

标签: python mysql

我已经成功下载了Connector / Python for MySQL。我在Python的shell中使用了以下代码来测试我的连接:

import mysql.connector

我收到以下错误消息:

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

我无法弄清楚为什么MySQL不被识别。

20 个答案:

答案 0 :(得分:41)

我遇到了类似的问题。我的环境细节 - Python 2.7.11 点9.0.1 CentOS版本5.11(最终版)

python解释器出错 -

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

使用pip搜索可用模块 -

$ pip search mysql-connector | grep --color mysql-connector-python



mysql-connector-python-rf (2.2.2)        - MySQL driver written in Python
mysql-connector-python (2.0.4)           - MySQL driver written in Python

安装mysql-connector-python-rf -

$ pip install mysql-connector-python-rf

验证

$ python
Python 2.7.11 (default, Apr 26 2016, 13:18:56)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-54)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import mysql.connector
>>>

谢谢=)

答案 1 :(得分:18)

可以从cli简单安装吗?

pip install mysql-connector-python-rf

包名称与导入库名称

不同

或我在代码中的通用变体:

import pip
pip.main(['install','mysql-connector-python-rf'])

对于新版本的pip:

from pip._internal import main
main(['install','mysql-connector-python-rf'])

最好 - 在运行python安装时安装所需的模块(如果很多)

答案 2 :(得分:6)

使用 pip3 install mysql-connector 安装打包的python(如果您使用的是Python3。对于Python 2,可以使用pip)。

答案 3 :(得分:4)

我犯的一个愚蠢错误是将mysql.py保留在同一目录中。尝试将mysql.py重命名为另一个名称,以使python不要将其视为模块。

答案 4 :(得分:3)

只是一个注释,我刚刚在ubuntu 16.04服务器上安装了mysql。我按以下顺序尝试了不同的选项:

  • 使用存储库sudo apt-get install python-mysqldb中的包:已正确安装,但不幸的是python已返回ImportError: No module named 'mysql'
  • 使用Mysql中的ubuntu包:wget http://dev.mysql.com/get/Downloads/Connector-Python/mysql-connector-python_2.1.4-1ubuntu16.04_all.deb。使用sudo dpckg -i package_name正确安装,但python返回了相同的错误。
  • 使用tar.gz文件,使用python安装,工作正常。
    • wget http://dev.mysql.com/get/Downloads/Connector-Python/mysql-connector-python-2.1.6.tar.gz(当时使用2.1.4)
    • tar -xf mysql-connector-python-2.1.6.tar.gz
    • cd mysql-connector-python-2.1.6/
    • sudo python3 setup.py install

没有调查前两个失败的原因,可能会稍后再试。 希望这有助于某人。

答案 5 :(得分:3)

试一试

sudo wget http://cdn.mysql.com//Downloads/Connector-Python/mysql-connector-python-2.1.3.tar.gz

gunzip mysql-connector-python-2.1.3.tar.gz

tar xf mysql-connector-python-2.1.3.tar

cd mysql-connector-python-2.1.3

sudo python3 setup.py install

答案 6 :(得分:2)

我发现@ gdxn96解决方案对我有用,但有1次更改。

sudo wget http://cdn.mysql.com//Downloads/Connector-Python/mysql-connector-python-2.1.3.tar.gz
tar -zxvf mysql-connector-python-2.1.3.tar
cd mysql-connector-python-2.1.3
sudo python3 setup.py install

答案 7 :(得分:2)

sudo python3 -m pip install mysql-connector-python

答案 8 :(得分:1)

您需要使用anaconda来管理python环境依赖项。可以使用conda安装程序安装MySQL连接器

conda install -c anaconda mysql-connector-python

答案 9 :(得分:0)

@nembokid 谢谢,我想以这个答案为基础。如果您使用 anaconda 或任何其他形式的环境管理,请务必从该环境中选择 python。

sudo /home/joseph/anaconda3/envs/stocks/bin/python -m pip install mysql-connector-python

答案 10 :(得分:0)

我确实尝试使用 apt 和 pip 重新安装。 但唯一有效的是 install from source

在 Ubuntu 18.04 x64 上

答案 11 :(得分:0)

运行

pip list 

以查看已安装的软件包列表。如果有 mysql-connector-python,那很好。

请记住不要将python脚本文件命名为mysql.py

答案 12 :(得分:0)

我的项目正在使用pipenv。以下命令对我有用:

pipenv install mysql-connector-python

答案 13 :(得分:0)

我尝试了所有答案,但对我没有用。 这是一个python版本的问题,最后,我意识到python 3脚本至少在ubuntu 18上需要针对python 3的显式pip命令。

python3 -m pip install mysql-connector

答案 14 :(得分:0)

对于64位Windows

使用滚轮安装

pip install wheel download from http://www.lfd.uci.edu/~gohlke/pythonlibs/#mysql-python

对于python 3.x:

pip install mysqlclient-xxxxxxxxx-win_amd64.whl

对于python 2.7:

pip install mysqlclient-xxxxxxxxx-win_amd64.whl

答案 15 :(得分:0)

这个问题困扰着我!!! 100%的解决方案是忘记使用mysql模块: import mysql.connector ,而是通过import pymysql使用pymysql。我按照说明安装了它:python3 -m pip install PyMySQL

对以下内容进行了更改: 1.进口声明 2.连接器 3.光标

之后,一切都像魅力一样。希望这会有所帮助!

答案 16 :(得分:0)

我发现了另一个原因: 如果程序文件的路径包含空格或特殊字符,则会出现此错误。

答案 17 :(得分:0)

只需检查PC上是否已安装MySQL连接器包

答案 18 :(得分:0)

我刚刚将源文件夹connector从文件夹mysql移到了site-packages。 并运行import connector

答案 19 :(得分:0)

您需要使用以下命令之一。哪一个取决于你拥有和使用的不同的操作系统和软件。

sudo easy_install mysql-python (mix os)
sudo pip install mysql-python (mix os)
sudo apt-get install python-mysqldb (Linux Ubuntu, ...)
cd /usr/ports/databases/py-MySQLdb && make install clean (FreeBSD)
yum install MySQL-python (Linux Fedora, CentOS ...)