我有一个小的webapp,它使用Pyhon/Flask和MySQL数据库来存储数据。我有一个学生数据库,大约有3000行。当试图加载该页面时,加载需要很长时间,有时甚至需要一分钟左右。大约20秒,非常慢,我想知道是什么原因造成的。This是发出任何请求之前服务器的状态,当我试图加载该站点时,{a2}发生。在
正如我所说,这不是太多的记录,我很困惑为什么这是如此无效。我使用的是ubuntu12.04,带有Ver 14.14 Distrib 5.5.32, for debian-linux-gnu (x86_64) using readline 6.2mysql版本。其他查询运行良好,例如列出姓名以某个字母开头的学生大约需要2-3秒,这是可以接受的。这显示了表的部分,所以我猜有些东西没有被优化。在
在我的.cnf文件是located here。我尝试了一些东西,在底部添加了一些行,但没有太多成功。在
实际的查询是由sqlalchemy完成的,这是用于加载的特定代码:score = db.session.query(Scores.id).order_by(Scores.date.desc()).correlate(Students).filter(Students.email == Scores.email).limit(1)
students = db.session.query(Students, score.as_scalar()).filter_by(archive=0).order_by(Students.exam_date)
return render_template("students.html", students=students.all())
这似乎是生成的sql:
^{pr2}$
提前感谢您的时间和帮助!在