dbbackup指定哪个pg_转储给我们

2024-10-06 12:44:03 发布

您现在位置:Python中文网/ 问答频道 /正文

打电话时

from django.core.management import call_command
call_command('dbbackup', compress=True, interactive=False)

我得到:

^{pr2}$

我使用PostgreSQL(version9.6.5)的非根安装作为django应用程序的后端。(用于安装的this教程。)

机器中还有一个postgreSQL安装(版本8.4.20)。在

在我切换到非根目录安装之前,一切都完美无瑕。 我的猜测是在dbbackup中调用的pg_dump仍然是根安装中的那个。在

如何指定使用哪个pg_转储?在


Tags: djangofromcoreimportfalsetruepostgresqlcall
1条回答
网友
1楼 · 发布于 2024-10-06 12:44:03

如果您进行了postgreSQL的非根目录安装,比如使用用户nonrootuser,那么您应该在/home/nonrootuser/postgres/bin/下找到{}以及{}。这是您要使用的pg_dump。在

Dbbackup允许您指定用于创建备份的连接器。 特别是它允许您指定dump命令(^{})。 若要指定连接器,请将以下块添加到设置.py公司名称:

import os  # if not yet imported
DBBACKUP_CONNECTORS = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql_psycopg2',
        'NAME': 'xxx',
        'USER': 'xxx',
        'PASSWORD': 'xxx',
        'HOST': 'xxx',
        'PORT': 'xxx',
        'DUMP_CMD': os.path.join(
            os.environ["HOME"],
            'nonrootuser',
            'bin',
            'pg_dump'
            )
        }
    }

xxx替换为您的特定值。在

希望有帮助!在

相关问题 更多 >