我有一个 SQL 数据库的转储,它是一个
.sql
文件。我尝试在 pgAdmin 中恢复它,但出现错误:
pg_restore: error: input file appears to be a text format dump. Please use psql.
然后我尝试使用
psql
CLI,但它只列出了我的用户,没有显示任何错误或恢复任何内容。我用命令尝试psql
psql grana < c:\dump-grana.sql
另外,当我尝试使用命令
psql -U [user] -d [dbname] -1 -f <filename>.sql
时,它返回与上图相同的结果。
如果您已经使用以下
pg_dump
创建转储文件
pg_dump -Fc -b $database > $database.dump
然后使用以下恢复命令:
pg_restore --verbose --clean --if-exists --exit-on-error --dbname $database $database.dump --single-transaction
您将必须公开以下变量
# Postgres restore
export PGPORT=${POSTGRES_PORT}
export PGHOST=${POSTGRES_HOST}
export PGUSER=${POSTGRES_USERNAME}
export PGPASSWORD=${POSTGRES_PASSWORD}