Django db 备份 postgres 错误
Django db back up postgres error
我正在使用 django-dbbackup 创建我的 postgres db 的备份。当我 运行 python manage.py dbbackup
它创建一个 default.backup
文件。
但是,当我 运行 python manage.py dbrestore
我得到以下错误。
Restoring backup for database: hera
Finding latest backup
Restoring: /home/dev/Documents/Program Codes/Python/Django/Hera/default.backup
Restore tempfile created: 670.5 KB
Are you sure you want to continue? [Y/n]y
Running: dropdb --username=****** --host=localhost hera
dropdb: database removal failed: ERROR: must be owner of database hera
CommandError: Error running: [u'dropdb', u'--username=dev', u'--host=localhost', u'hera']
这是关于确保您使用的用户是数据库的所有者。现在看起来你是 运行 使用 dev
用户的 dbrestore
命令(来自 CommandError: Error running: [u'dropdb', u'--username=dev', u'--host=localhost', u'hera']
行)。
可能有三种选择:
1/ 使用 PSQL 命令将数据库的所有者更改为 dev
:
ALTER DATABASE hera OWNER TO dev;
2/ 更改您的 dbrestore 脚本在运行时使用的 --username=dev
数据库所有者(不同于 dev
,您可以在 PSQL 中使用 \l
列出您的数据库并查看哪个用户拥有该数据库。
3/ 您可以赋予 dev
超级用户和 createdb 权限,但不确定这在安全性方面是否理想。
我正在使用 django-dbbackup 创建我的 postgres db 的备份。当我 运行 python manage.py dbbackup
它创建一个 default.backup
文件。
但是,当我 运行 python manage.py dbrestore
我得到以下错误。
Restoring backup for database: hera
Finding latest backup
Restoring: /home/dev/Documents/Program Codes/Python/Django/Hera/default.backup
Restore tempfile created: 670.5 KB
Are you sure you want to continue? [Y/n]y
Running: dropdb --username=****** --host=localhost hera
dropdb: database removal failed: ERROR: must be owner of database hera
CommandError: Error running: [u'dropdb', u'--username=dev', u'--host=localhost', u'hera']
这是关于确保您使用的用户是数据库的所有者。现在看起来你是 运行 使用 dev
用户的 dbrestore
命令(来自 CommandError: Error running: [u'dropdb', u'--username=dev', u'--host=localhost', u'hera']
行)。
可能有三种选择:
1/ 使用 PSQL 命令将数据库的所有者更改为 dev
:
ALTER DATABASE hera OWNER TO dev;
2/ 更改您的 dbrestore 脚本在运行时使用的 --username=dev
数据库所有者(不同于 dev
,您可以在 PSQL 中使用 \l
列出您的数据库并查看哪个用户拥有该数据库。
3/ 您可以赋予 dev
超级用户和 createdb 权限,但不确定这在安全性方面是否理想。