Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django dbbackup:如何更改备份文件扩展名?_Python_Django_Database_Postgresql - Fatal编程技术网

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

Python Django dbbackup:如何更改备份文件扩展名?,python,django,database,postgresql,Python,Django,Database,Postgresql,我正在尝试使用模块备份我的数据库。运行dbbackup后,它会保存一个数据库转储,其名称如下: default-user-2018-03-22-220805.psql 然后我删除了数据库中一个表中的最后一行。接下来,我运行dbrestore并获得以下结果: > Finding latest backup Restoring backup for database 'default' and > server 'None' > Restoring: default-user-

我正在尝试使用模块备份我的数据库。运行
dbbackup
后,它会保存一个数据库转储,其名称如下:

default-user-2018-03-22-220805.psql
然后我删除了数据库中一个表中的最后一行。接下来,我运行
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
但在那之后,什么也没有发生。删除的行不会在my db中还原。
我已经读到一些地方(不幸的是已经丢失了该页面),为了恢复我的数据库,转储文件必须是
.tar
格式。
我还尝试使用
.psql
pgAdmin 4
-通过UI工具恢复db。但出现错误,输入文件不是有效的存档。
上一次我尝试在Windows cmd运行
pd\u restore
时使用该文件,得到:

pg_restore: [archiver] input file does not appear to be a valid archive
所以问题是:如何使用django dbbackup
dbrestore
及其 生成的文件或如何更改其输出的扩展名格式 如果无法从
.psql
文件还原,则返回文件

另外,我在源代码中还发现了一行
扩展名='psql'
,试图改变它,它成功了-我在输出中得到了一个
.tar
文件,但下一步
dbrestore
说:

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

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

DBBACKUP_FILENAME_TEMPLATE = '{databasename}-{servername}-{datetime}.sql'
您可以在settings.py中定义DBBACKUP\u FILENAME\u模板变量

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