在Heroku Cedar堆栈上使用Sqlite3

时间:2011-10-16 13:07:32

标签: python sqlite heroku

有没有办法在Heroku上使用Sqlite3和Django?

2 个答案:

答案 0 :(得分:22)

雪松堆栈的文件系统不是只读。

但是,您仍然不能在其上存储任何数据,因为文件系统是 ephemeral

每当您的应用程序重新启动时,无论您写入应用程序的文件系统,都会永远消失。

任何时候你添加一个dyno,这两个dynos都有自己的短暂系统;一个dyno存储到其短暂文件系统的任何数据都不可用于其他dyno或您稍后可能添加的任何其他dyno。

Sqlite3将数据写入本地文件系统。你不能将Sqlite3与Heroku一起使用。

Heroku提供默认的PostgreSQL安装,Heroku管理。你可以使用它。

您还可以使用任何第三方管理的云数据库系统,例如Amazon RDS'或Xeround的MySQL,MongoHQ或MongoLab的MongoDB或Cloudant的CouchDB - 所有这些都可以作为Heroku插件使用。

答案 1 :(得分:0)

我不确定这个答案何时过时,但截至2013年11月21日,sqlite3可用于heroku:https://devcenter.heroku.com/articles/sqlite3

如果您只是做一个小型的演示应用程序,它可以正常工作,例如运行1 dyno并不关心数据库每24小时至少擦除一次。如果没有,那么heroku帮助文章建议迁移到Postgres。

确保.db文件位于某个位置的git目录中,而不是在/ tmp /中,因为例如,如果您正在关注Flask tutorial app, flaskr

相关问题