如何安装MySQL for Flask?

2024-05-14 20:01:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用的是OSX优胜美地,Python3.6.2,基本上通过了每一个stackoverflow关于将MySQL安装到flask中的帖子。

我试过pip安装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命令。

我的pip列表是

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/

Tags: pipinpybuildconfigvarsetupline
3条回答

你问题的根本原因就在这里

OSError: mysql_config not found

mySQLdb是mysql的python接口,但它不是mysql本身。你需要先安装mysql。

请参阅下面的链接。 mysql

安装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。您正在安装的包不支持Python3。

所以在Python 3中

pip install configparser

在python 2中

pip install ConfigParser

看起来你对你正在安装的东西很困惑。您需要两件事:MySQL和一个Python模块,它允许Flask使用MySQL。你正在安装后者,但除非你真的有MySQL,否则它不会有任何用处。MySQL是完全独立于Python的软件,因此任何基于pip的软件都无法成功安装它。停止搜索如何将MySQL安装到Flask中,开始搜索诸如“如何在Mac上安装MySQL”之类的内容,你就会走上正轨。

相关问题 更多 >

    热门问题