安装 MySQL-python
Posted
技术标签:
【中文标题】安装 MySQL-python【英文标题】:Installing MySQL-python 【发布时间】:2011-11-19 13:26:54 【问题描述】:尝试在我的 Ubuntu/Linux Box 上 时出现以下故障。从下面看来问题是 sh: mysql_config: not found
有人可以建议我该怎么做吗?
rmicro@ubuntu:~$ pip install MySQL-python
Downloading/unpacking MySQL-python
Downloading MySQL-python-1.2.3.tar.gz (70Kb): 70Kb downloaded
Running setup.py egg_info for package MySQL-python
sh: mysql_config: not found
Traceback (most recent call last):
File "<string>", line 14, in <module>
File "/home/rmicro/build/MySQL-python/setup.py", line 15, in <module>
metadata, options = get_config()
File "setup_posix.py", line 43, in get_config
libs = mysql_config("libs_r")
File "setup_posix.py", line 24, in mysql_config
raise EnvironmentError("%s not found" % (mysql_config.path,))
EnvironmentError: mysql_config not found
Complete output from command python setup.py egg_info:
sh: mysql_config: not found
Traceback (most recent call last):
File "<string>", line 14, in <module>
File "/home/rmicro/build/MySQL-python/setup.py", line 15, in <module>
metadata, options = get_config()
File "setup_posix.py", line 43, in get_config
libs = mysql_config("libs_r")
File "setup_posix.py", line 24, in mysql_config
raise EnvironmentError("%s not found" % (mysql_config.path,))
EnvironmentError: mysql_config not found
----------------------------------------
Command python setup.py egg_info failed with error code 1
【问题讨论】:
pip install mysql-python fails with EnvironmentError: mysql_config not found 的可能重复项 【参考方案1】:在 Ubuntu 上,建议使用发行版存储库。所以安装 python-mysqldb 应该很简单:
sudo apt-get install python-mysqldb
如果您确实想使用 pip 安装,如前所述,不是建议的路径,但可能,请查看之前提出的问题和答案:pip install mysql-python fails with EnvironmentError: mysql_config not found
这里有一个非常全面的开发者指南:http://mysql-python.blogspot.no/2012/11/is-mysqldb-hard-to-install.html
要获得 python-mysqld 使用 pip 安装它的所有先决条件(如果你使用 virtualenv,你会想要这样做),运行以下命令:
sudo apt-get install build-essential python-dev libmysqlclient-dev
【讨论】:
能解释一下你的真正意思吗? 我想他是说如果你安装python-mysqldb作为repository包,系统会为你处理依赖管理,意识到它也需要安装libmysqlclient-dev @user618677:sudo apt-get install python-mysqldb
谢谢大家,成功了。很明显,我需要更多地了解 Ubuntu。
@zalun 如我的回答末尾所述,如果您想使用 pip(在 virtualenv 中),您必须手动安装先决条件。【参考方案2】:
您有 2 个选项,如下所述:
建议像 Glaslos 这样的分发包:
# sudo apt-get install python-mysqldb
在这种情况下,您不能使用 virtualenv no-site-packages(默认选项) 但必须使用:
# virtualenv --system-site-packages myenv
使用干净的 virtualenv 并构建您自己的 python-mysql 包。
首先创建virtualenv:
# virtualenv myvirtualenv
# source myvirtualenv/bin/activate
然后安装构建依赖:
# sudo apt-get build-dep python-mysqldb
现在你可以安装python-mysql了
# pip install mysql-python
注意 Ubuntu 包是 python-mysql*db* ,python pypi 包是 python-mysql(没有 db)
【讨论】:
【参考方案3】:yum install mysql-devel
它对我有用。
【讨论】:
【参考方案4】:重新阅读错误消息。它说:
sh: mysql_config: 未找到
如果你使用的是 Ubuntu Natty,mysql_config
属于包 libmysqlclient-dev
【讨论】:
【参考方案5】:找到文件夹:sudo find / -name "mysql_config"
(假设是"/opt/local/lib/mysql5/bin"
)
将其添加到 PATH:export PATH:export PATH=/opt/local/lib/mysql5/bin:$PATH
重新安装
【讨论】:
【参考方案6】:Python 或 Python3 与 MySQL,您将需要这些。这些库使用 MySQL 的 C 和 Python 连接器(您还需要安装 C 库),从而克服了 mysqldb 库的一些限制。
sudo apt-get install libmysqlclient-dev
sudo apt-get install python-mysql.connector
sudo apt-get install python3-mysql.connector
【讨论】:
【参考方案7】:这在 python 3 上对我有用
点安装mysqlclient
【讨论】:
【参考方案8】:在 Ubuntu Bionic 机器上的带有 virtualenv 的 python3 中,以下命令对我有用:
sudo apt install build-essential python-dev libmysqlclient-dev
sudo apt-get install libssl-dev
pip install mysqlclient
【讨论】:
以上是关于安装 MySQL-python的主要内容,如果未能解决你的问题,请参考以下文章