Django-dbbackup:如何更改备份文件扩展名?

时间:2018-03-22 20:24:37

标签: python django database postgresql

我正在尝试使用django-dbbackup模块来备份我的数据库。运行dbbackup后,它会保存一个名为这样的名称的数据库转储:

default-user-2018-03-22-220805.psql

然后我删除了db的一个表中的最后一行。接下来我运行dbrestore并获得以下内容:

> Finding latest backup Restoring backup for database 'default' and
> server 'None' 
> Restoring: default-user-2018-03-22-220805.psql
> Restore tempfile created: 407.0 KiB 
> Are you sure you want to continue?
> [Y/n]  y
> Following files were affected

但在那之后 - 没有任何反应。删除的行不会在我的数据库中恢复 我已经阅读了一些(遗憾的是已丢失该页面)要恢复我的数据库,转储文件必须是.tar格式。
 此外,我尝试将.psqlpgAdmin 4一起使用 - 通过UI工具恢复数据库。但是输入文件不是有效存档时出错  最后,我尝试在运行pd_restore的Windows cmd中使用该文件并获得:

pg_restore: [archiver] input file does not appear to be a valid archive
  

所以问题是:如何使用django-dbbackup dbrestore   生成的文件或如何更改其输出的扩展格式   文件,如果无法从.psql文件恢复?

P.S。我还在源代码中找到了一行extension = 'psql',尝试更改它,并且它有效 - 我在输出中得到了一个.tar文件,但接下来dbrestore说:

Finding latest backup
CommandError: There's no backup file available.

1 个答案:

答案 0 :(得分:1)

您可以使用此变量更改文件备份扩展名

=

您在settings.py中定义DBBACKUP_FILENAME_TEMPLATE变量

此设置将扩展名备份文件从转储更改为sql。 您可以使用其他扩展名更改sql扩展文件。