在 Django 视图上触发数据库备份 [关闭]
Posted
技术标签:
【中文标题】在 Django 视图上触发数据库备份 [关闭]【英文标题】:Trigger database backup on a django view [closed] 【发布时间】:2016-03-15 13:15:49 【问题描述】:我正在尝试从我在 Django 中创建的自定义视图中的按钮触发数据库备份。问题是,在我找到的所有关于数据库备份的信息中,该命令是自动触发的,或者是从 manage.py 命令触发的。
关于如何解决它的任何想法?甚至可以从视图中执行 manage.py 命令?
【问题讨论】:
【参考方案1】:是的,可以从视图中执行manage.py
命令。查看 django 文档中的 this 部分。
但真正的问题是你是否应该这样做。备份数据库需要时间,在视图中执行任何命令都会强制 django 等待该命令完成,然后再将响应发送回浏览器。在这段执行时间内,您的一名工作人员将很忙,不会接受任何请求。
如果您不小心多次执行视图,您可以阻止所有工作人员,这样在备份完成之前您的网站将无法访问。
考虑使用一些卸载或后台任务,例如Celery、uWSGI spooler,或者不要为此使用视图。
【讨论】:
以上是关于在 Django 视图上触发数据库备份 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章