你如何为 Flask 安装 MySQL? [复制]
Posted
技术标签:
【中文标题】你如何为 Flask 安装 MySQL? [复制]【英文标题】:How do you install MySQL for Flask? [duplicate] 【发布时间】:2018-01-19 14:15:59 【问题描述】:我使用的是 OS X Yosemite,Python 3.6.2,并且基本上阅读了有关将 mysql 安装到烧瓶中的每一篇 *** 帖子。
我已经尝试过 pip install flask-mysqlDB
,这给了我错误
Collecting flask-mysqldb
Using cached Flask-MySQLdb-0.2.0.tar.gz
Requirement already satisfied: Flask>=0.10 in ./venv/lib/python3.6/site-packages (from flask-mysqldb)
Collecting mysqlclient (from flask-mysqldb)
Using cached mysqlclient-1.3.10.tar.gz
Complete output from command python setup.py egg_info:
/bin/sh: mysql_config: command not found
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/private/var/folders/c4/y49xcq6j6jlcr_8yyckm75th0000gp/T/pip-build-32rvmlzy/mysqlclient/setup.py", line 17, in <module>
metadata, options = get_config()
File "/private/var/folders/c4/y49xcq6j6jlcr_8yyckm75th0000gp/T/pip-build-32rvmlzy/mysqlclient/setup_posix.py", line 44, in get_config
libs = mysql_config("libs_r")
File "/private/var/folders/c4/y49xcq6j6jlcr_8yyckm75th0000gp/T/pip-build-32rvmlzy/mysqlclient/setup_posix.py", line 26, in mysql_config
raise EnvironmentError("%s not found" % (mysql_config.path,))
OSError: mysql_config not found
----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/c4/y49xcq6j6jlcr_8yyckm75th0000gp/T/pip-build-32rvmlzy/mysqlclient/
由于我的 Mac 版本,sudo apt-get
命令都不起作用。 brew install python
安装的自制软件,我仍然无法使用 sudo apt-get
命令。
我的点子列表是
click (6.7)
Flask (0.12.2)
itsdangerous (0.24)
Jinja2 (2.9.6)
MarkupSafe (1.0)
mysql-connector-python-rf (2.2.2)
mysqlclient (1.3.10)
pip (9.0.1)
setuptools (28.8.0)
virtualenv (15.1.0)
Werkzeug (0.12.2)
现在我有一个错误提示:
Collecting MySQL-python
Using cached MySQL-python-1.2.5.zip
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/private/var/folders/c4/y49xcq6j6jlcr_8yyckm75th0000gp/T/pip-build-n8on2g_t/MySQL-python/setup.py", line 13, in <module>
from setup_posix import get_config
File "/private/var/folders/c4/y49xcq6j6jlcr_8yyckm75th0000gp/T/pip-build-n8on2g_t/MySQL-python/setup_posix.py", line 2, in <module>
from ConfigParser import SafeConfigParser
ModuleNotFoundError: No module named 'ConfigParser'
----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/c4/y49xcq6j6jlcr_8yyckm75th0000gp/T/pip-build-n8on2g_t/MySQL-python/
【问题讨论】:
如果你不能使用 apt 这确实是一个更大的问题你应该解决,它与 Python 无关。 这里解释了两个不同的包 https://***.com/questions/45521644/flask-flaskext-mysql-no-attribute-connection/45522011#45522011 @Nabin 非常感谢!我想我能够安装它,因为我收到消息“成功安装 flask-mysqldb-0.2.0”我在我的 pip 列表中有“Flask-MySQLdb (0.2.0)”。 MySQL 应该已经安装了吧? 【参考方案1】:安装 MySQL 包和依赖项
Ubuntu
sudo apt-get install python-pip python-dev libmysqlclient-dev
Mac 操作系统
brew install mysql-connector-c
使用PIP
pip install MySQL-python
在 Python 3 中,ConfigParser 已重命名为 configparser。您正在安装的软件包不支持 Python 3。
所以在 Python 3 中
pip install configparser
在python 2中
pip install ConfigParser
【讨论】:
@Kaliz 我仍然得到相同的错误,因为我尝试了 pip install configparser 和 ConfigParser。已满足要求:/Users/yuyaKawahara/Desktop/projects/venv/lib/python3.6/site-packages 中的 configparser @Robert 根据你的python版本只安装一个configparser或者ConfigParser 我正在使用 python3,所以我安装了 configparser 但我仍然得到同样的错误。换了个方法,结果还是一样…… 我看到几个帖子说只有mysqlclient就足够了,这是真的吗?【参考方案2】:问题的根源就在这里
操作系统错误:找不到 mysql_config
mySQLdb 是mysql 的python 接口,但它不是mysql 本身。你需要先安装mysql。
请参阅下面的此链接。 mysql
【讨论】:
我安装了 MySQL 但我仍然收到错误,而且我仍然无法使用 sudo apt-get 命令。 我猜你安装了错误的包,它与 python 版本不兼容。我的猜测是您正在使用 python3,其中 ConfigParser(in python2) 已重命名为 configparser 当你说包错了,我应该卸载什么安装什么包? 尝试使用 mysqlclient 包,它是 MySQL-python 的替代品。它是 MySQL-python 的一个分支,增加了对 Python 3 的支持。使用命令:pip install mysqlclient @Robert 我更新我的答案检查这是由于 Python 版本【参考方案3】:您似乎对正在安装的内容感到困惑。你需要两件东西:MySQL,以及一个让 Flask 使用 MySQL 的 Python 模块。您正在安装后者,但除非您确实拥有 MySQL,否则它没有用。 MySQL 是完全独立于 Python 的软件,因此任何基于 pip 的软件都无法成功安装它。停止搜索如何将 MySQL 安装“到 Flask”中,开始搜索“如何在 Mac 上安装 MySQL”之类的内容,您就会走上正轨。
【讨论】:
谢谢!我想我能够安装 MySQL,但现在出现错误 ModuleNotFoundError: No module named 'ConfigParser'以上是关于你如何为 Flask 安装 MySQL? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
你如何为 getInitialProps 编写 Jest 测试?
你如何为 UIImagePickerController 的导航栏着色/自定义?