繁体   English   中英

Flask的Heroku MySQL数据库错误

[英]Heroku MySQL DB Error with Flask

我正在尝试在Heroku上使用ClearDB托管本地MySQL数据库。 构建成功,但是当我尝试访问该应用程序时,该应用程序失败。

这是我的app.py代码(在第一行失败):

db = MySQLdb.connect(host="localhost", user="root", db="database")
cur = db.cursor()
query = """SELECT * from database"""
cur.execute(query)
data = cur.fetchall()

这是日志输出:

2016-06-01T14:48:48.720931+00:00 heroku[web.1]: Starting process with command `python app.py`
2016-06-01T14:48:51.790883+00:00 app[web.1]:   File "app.py", line 30, in <module>
2016-06-01T14:48:51.790864+00:00 app[web.1]: Traceback (most recent call last):
2016-06-01T14:48:51.790910+00:00 app[web.1]:     db = MySQLdb.connect(host="localhost", user="root", db="database")
2016-06-01T14:48:51.790981+00:00 app[web.1]: _mysql_exceptions.OperationalError: (2002, "Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)")
2016-06-01T14:48:51.790911+00:00 app[web.1]:   File "/app/.heroku/python/lib/python2.7/site-packages/MySQLdb/__init__.py", line 81, in Connect
2016-06-01T14:48:51.790912+00:00 app[web.1]:     return Connection(*args, **kwargs)
2016-06-01T14:48:51.790912+00:00 app[web.1]:   File "/app/.heroku/python/lib/python2.7/site-packages/MySQLdb/connections.py", line 193, in __init__
2016-06-01T14:48:51.790937+00:00 app[web.1]:     super(Connection, self).__init__(*args, **kwargs2)
2016-06-01T14:48:52.491629+00:00 heroku[web.1]: Process exited with status 1

这是heroku配置输出的内容:

CLEARDB_DATABASE_URL: mysql://actualurl
DATABASE_URL:         mysql://actualurl
MYSQL_DB:             database
MYSQL_HOST:           localhost
MYSQL_USER:           root

发布您的Heroku配置毫无意义,因为很明显您的应用程序没有使用它。 您已将数据库主机硬编码为“ localhost”,而不是使用DATABASE_URL环境变量。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM