我尝试使用shell来恢复转储的命令,但仍然没有起作用。
我是这个新手。如果有人能帮助我,我有义务。
编辑
我在PostGres的Shell sql窗格中使用以下命令,而坐在newTestDB上。
newTestDB-# \i E:\db-rbl-restore-20120511_Dump-20120514.sql
它仍然提供相同的错误(“权限被拒绝”)。
升级权限后,它只显示Postgresql的默认表:
List of tablespacesname | Owner | Location-----------+----------+----------pg_default | postgres |pg_global | postgres |(2 rows)
我不知道如何从sql文件导入/恢复数据库。
你没有提到你的备份是如何做的,所以通用的答案是:通常使用psql工具。根据指定要转储的pg_dump,sql文件可以有不同的sql命令集。
例如,如果您指示pg_dump使用–clean和-schema-only转储数据库,则无法期望能够从该转储恢复数据库,因为没有用于copYing的sql命令(或者INSERTing if – 使用插入表)表中的实际数据。像这样的转储将仅包含DDL sql命令,并且将能够重新创建模式而不是实际的数据。
使用psql恢复典型的sql转储:
psql (connection options here) database < yourbackup.sql
或者从psql会话中,
psql (connection options here) databasedatabase=# \i /path/to/yourbackup.sql
在使用pg_dump -Fc(“自定义格式”)进行备份的情况下,这不是纯文本而是压缩文件,您需要使用pg_restore工具。
如果您正在使用unix,请尝试:
man psqlman pg_dumpman pg_restore
否则,看看the html docs.祝你好运!
总结以上是内存溢出为你收集整理的如何将PostgreSQL转储文件恢复到Postgres数据库?全部内容,希望文章能够帮你解决如何将PostgreSQL转储文件恢复到Postgres数据库?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)