dbbackup 指定要使用的 pg_dump
dbbackup specify which pg_dump to use
调用时
from django.core.management import call_command
call_command('dbbackup', compress=True, interactive=False)
我得到:
CommandConnectorError: Error running: pg_dump xxx --host=localhost --port=xxx --username=xxx --no-password --clean
pg_dump: server version: 9.6.5; pg_dump version: 8.4.20
pg_dump: aborting because of server version mismatch
我正在使用非根安装的 PostgreSQL(版本 9.6.5
)作为 Django 应用程序的后端。 (使用 this 教程进行安装。)
机器中也安装了postgreSQL(版本8.4.20
)。
在我切换到非根安装之前,一切都完美无缺。
我的猜测是 dbbackup
中调用的 pg_dump
仍然是来自根安装的那个。
如何指定要使用哪个 pg_dump?
如果您进行了 postgreSQL 的非根安装,比如用户 nonrootuser
,那么您应该在 [=] 下找到此安装的 psql
和 pg_dump
14=]。这是您要使用的pg_dump
。
Dbbackup 允许您指定它用于创建备份的连接器。
特别是它允许您指定转储命令 (DUMP_CMD
)。
要指定连接器,请将以下块添加到您的 settings.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
替换为您的特定值。
希望对您有所帮助!
调用时
from django.core.management import call_command
call_command('dbbackup', compress=True, interactive=False)
我得到:
CommandConnectorError: Error running: pg_dump xxx --host=localhost --port=xxx --username=xxx --no-password --clean
pg_dump: server version: 9.6.5; pg_dump version: 8.4.20
pg_dump: aborting because of server version mismatch
我正在使用非根安装的 PostgreSQL(版本 9.6.5
)作为 Django 应用程序的后端。 (使用 this 教程进行安装。)
机器中也安装了postgreSQL(版本8.4.20
)。
在我切换到非根安装之前,一切都完美无缺。
我的猜测是 dbbackup
中调用的 pg_dump
仍然是来自根安装的那个。
如何指定要使用哪个 pg_dump?
如果您进行了 postgreSQL 的非根安装,比如用户 nonrootuser
,那么您应该在 [=] 下找到此安装的 psql
和 pg_dump
14=]。这是您要使用的pg_dump
。
Dbbackup 允许您指定它用于创建备份的连接器。
特别是它允许您指定转储命令 (DUMP_CMD
)。
要指定连接器,请将以下块添加到您的 settings.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
替换为您的特定值。
希望对您有所帮助!