Python 可以用Sqlite部署Django吗?

Python 可以用Sqlite部署Django吗?,python,django,postgresql,sqlite,heroku,Python,Django,Postgresql,Sqlite,Heroku,我已经构建了一个使用sqlite(默认数据库)的Django应用程序,但是我找不到任何允许使用sqlite部署的地方。Heroku只与postgresql一起工作,我花了两天时间尝试切换数据库,但无法解决这个问题,所以我只想使用sqlite进行部署。(这只是一个小应用程序。) 有几个问题: 我可以在任何地方部署sqlite吗 如果是,在哪里/如何 确保可以使用sqlite部署。。。这不是真正的建议,但如果您的网络流量较低,应该可以正常工作 在settings.py中将数据库引擎设置为sqlit

我已经构建了一个使用sqlite(默认数据库)的Django应用程序,但是我找不到任何允许使用sqlite部署的地方。Heroku只与postgresql一起工作,我花了两天时间尝试切换数据库,但无法解决这个问题,所以我只想使用sqlite进行部署。(这只是一个小应用程序。)

有几个问题:

  • 我可以在任何地方部署sqlite吗
  • 如果是,在哪里/如何

确保可以使用sqlite部署。。。这不是真正的建议,但如果您的网络流量较低,应该可以正常工作


在settings.py中将数据库引擎设置为sqlite。。。只需确保您对为数据库指定的路径具有写访问权限即可

确保您可以使用sqlite部署。。。这不是真正的建议,但如果您的网络流量较低,应该可以正常工作


在settings.py中将数据库引擎设置为sqlite。。。只要确保您对为数据库指定的路径具有写访问权,SQLite是磁盘上的数据库,这对于开发目的非常有用,但是像Heroku这样的服务希望您的服务器端代码是无状态的,因此不允许像SQLite这样的数据库。我想你可以让它工作(只要你在Heroku的磁盘上找到一个地方放置你的SQLite db),但是每次你重新部署时,你都会不断地丢失数据库的内容


特别是对于Heroku,我将把您重定向到解释如何在Heroku上使用Django和PostgreSQL的地方。

SQLite是磁盘上的数据库,对于开发目的非常有用,但是像Heroku这样的服务期望您的服务器端代码是无状态的,因此实际上不允许像SQLite这样的数据库。我想你可以让它工作(只要你在Heroku的磁盘上找到一个地方放置你的SQLite db),但是每次你重新部署时,你都会不断地丢失数据库的内容


特别是对于Heroku,我会将您重定向到解释如何在Heroku上使用Django和PostgreSQL。

不要在Heroku上使用
SQLite
。如中所述,您将丢失您的数据:

SQLite在内存中运行,并将其数据存储备份到磁盘上的文件中。 虽然这一策略在发展中效果良好,但Heroku的Cedar stack 有一个短暂的文件系统。你可以给它写信,也可以阅读 但内容将定期清除。如果你愿意 在Heroku上使用SQLite,至少会丢失整个数据库 每24小时一次

即使Heroku的磁盘是持久的,运行SQLite也不会 很合身。由于SQLite不作为服务运行,因此每个dyno都会 运行单独的运行副本。每个副本都需要自己的磁盘 后援商店。这意味着为应用程序供电的每个dyno都会 由于磁盘未同步,因此具有不同的数据集

您可以将应用程序配置为在Heroku上运行,而不是在Heroku上使用SQLite 博士后


不要在heroku上使用SQLite。如中所述,您将丢失您的数据:

SQLite在内存中运行,并将其数据存储备份到磁盘上的文件中。 虽然这一策略在发展中效果良好,但Heroku的Cedar stack 有一个短暂的文件系统。你可以给它写信,也可以阅读 但内容将定期清除。如果你愿意 在Heroku上使用SQLite,至少会丢失整个数据库 每24小时一次

即使Heroku的磁盘是持久的,运行SQLite也不会 很合身。由于SQLite不作为服务运行,因此每个dyno都会 运行单独的运行副本。每个副本都需要自己的磁盘 后援商店。这意味着为应用程序供电的每个dyno都会 由于磁盘未同步,因此具有不同的数据集

您可以将应用程序配置为在Heroku上运行,而不是在Heroku上使用SQLite 博士后


这对Heroku来说不是真的。Heroku有一个短暂的文件系统,所以不能假设存储在它上面的任何东西都是持久的。这对Heroku来说并不是真的。Heroku有一个短暂的文件系统,所以不能假设存储在它上面的任何东西都是持久的。