我有PostgreSQL 11服务器,只有ssl连接(我的云提供商提供的“托管PostgreSQL”服务)
在文档中,到此服务器的psql连接应该如下所示:
psql "host=xxx.mdb.yandexcloud.net \
port=6432 \
sslmode=verify-full \
dbname=<database> \
user=<user>\
target_session_attrs=read-write"有了这个命令,我就能够成功地连接到服务器。因此,下一步是将我的数据库从备份恢复到该服务器。
以前,我使用此命令将备份还原到我的旧postgreSQL服务器:
pg_restore -d <database> -O -c -v -x <file>.dump所以,我试着这么做:
pg_restore "host=xxx.mdb.yandexcloud.net \
port=6432 \
sslmode=verify-full \
dbname=<database> \
user=<user>\
target_session_attrs=read-write" -d <database> -O -c -v -x <file>.dump并得到了以下错误:
pg_restore: too many command-line arguments (first is "<file>.dump")
Try "pg_restore --help" for more information.所以,我需要它来设置正确的pg_restore方式,但我不知道怎么做。
发布于 2020-03-18 09:23:01
就像这样:
PGTARGETSESSIONATTRS=read-write PGSSLMODE=verify-full pg_restore -Fd \
-v -h <host(s)> -p6432 -U<user> -d <db> --single-transaction --no-privileges <backup folder>但是,请确保(如果您确实在YandexCloud之外运行此操作)当前主主机已分配了公共IP。
https://serverfault.com/questions/975666
复制相似问题