【发布时间】:2015-12-13 22:18:09
【问题描述】:
系统:ubuntu14.04,mysql:5.5,python:2.7.4
我已经使用这个命令在 virtualenv 之外安装了 mysql-connector-python:
pip install mysql-connector-python --allow-external mysql-connector-python
我可以在 virtualenv 之外正确使用 mysql-connector:
think@think-Inspiron-N4050:~$ python
Python 2.7.6 (default, Jun 22 2015, 18:00:18)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import mysql.connector
>>>
>>>
然后我激活了一个 virtualenv 并安装了 mysql-connector。我用的是这个方法(我从官网下载了这个安装包):
think@think-Inspiron-N4050:~/myzone/MindFly$ source venv/bin/activate
(venv)think@think-Inspiron-N4050:~/myzone/MindFly$ cd ~/download/
(venv)think@think-Inspiron-N4050:~/download$ dpkg -i mysql-connector-python_2.0.4-1ubuntu14.04_all.deb
正确安装后无法导入:
(venv)think@think-Inspiron-N4050:~/download$ python
Python 2.7.6 (default, Jun 22 2015, 18:00:18)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import mysql.connector
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named mysql.connector
我不知道为什么,然后我不得不在 virtualenv 中安装 MySQLdb:
(venv)think@think-Inspiron-N4050:~/myzone/MindFly$ sudo apt-get install python-mysqldb
完成后我也无法导入
(venv)think@think-Inspiron-N4050:~/myzone/MindFly$ python
Python 2.7.6 (default, Jun 22 2015, 18:00:18)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import MySQLdb
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named MySQLdb
然后我安装了 MySQL-python 和 libmysqlclient-dev,还是不行。
然后我查看了 venv/lib/python2.7/site-packages:
(venv)think@think-Inspiron-N4050:~/myzone/MindFly/venv/lib/python2.7/site-packages$ ls
easy_install.py pip-7.1.2.dist-info wheel
easy_install.pyc pkg_resources wheel-0.24.0.dist-info
_markerlib setuptools
pip setuptools-18.2.dist-info
没有mysql-connector或mysqldb,当我尝试重新安装mysqlconnector时,我在/usr/lib/python2.7/dist-packages中找到了mysqlconnector,
(venv)think@think-Inspiron-N4050:~/myzone/MindFly$ sudo pip install mysql-connector-python --allow-external mysql-connector-python
[sudo] password for think:
Requirement already satisfied (use --upgrade to upgrade): mysql-connector-python in /usr/lib/python2.7/dist-packages
Cleaning up...
我安装了mysql-connector-python,mysqldb,mysql-python和libmysqlclient-dev之后真的不知道怎么办了。我可以在 virtualenv 之外使用它们,但我仍然无法在 virtualenv 中导入 mysql-connector 或 mysqldb。
请帮助我:如何在 virtualenv 中连接 mysql?非常感谢。 (如果表达不清楚,请告诉我,我会更新它,谢谢)
【问题讨论】:
-
@Youn Elan 非常感谢您
标签: python mysql virtualenv mysql-connector