问题标签 [pg-restore]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
119 浏览

php - 即使备份还原成功后,heroku postgres 上也没有表

我是新来的。

我在本地机器上有 php 服务器和 postgres db。通过pgAdmin备份localdb后,我尝试使用命令在heroku实例上恢复它

它说在 heroku pg:backups info r024 上恢复已完成并且备份成功

但是在 heorku 实例上,它显示了 0 个表,而且 php 项目也没有连接到数据库。

0 投票
2 回答
3447 浏览

postgresql - 恢复 .dump 文件 - “权限被拒绝”

我正在建立一个网站,但在恢复数据库 .dump 文件时遇到了一些问题。我正在使用 centos7、selinux、postgresql 9.4 和 apache2。

这是我的 pg_hba.conf 文件

在此处输入图像描述

这是我试图移动转储的命令:

当我这样做时,我收到错误:

没有权限。

我错过了什么还是有什么我应该改变我的设置?如果您需要更多信息,请与我们联系。

谢谢!

0 投票
1 回答
683 浏览

postgresql - C#:pg_restore 到不同的模式

我有 .net 应用程序,它试图使用pg_dump获取数据转储并使用pg_restore进行恢复。

这是我的数据转储代码:

我正在获取公共架构上的所有数据表。

现在我需要使用 pg_restore 在我的 postgres 服务器上恢复这个数据转储。

但是我需要将此数据碰撞恢复到称为stack的不同数据模式。

这是 Windows 服务应用程序,我无法进行任何手动脚本更改。

如何将我的数据转储恢复到不同的模式?

感谢您的反馈!!

0 投票
0 回答
445 浏览

database - Postgresql 表备份恢复

我有一个包含 50 个表(5 个模式,5 个表空间)的数据库。并尝试使用以下命令备份几个表(每个表在不同的表空间中)。

上面的命令可以很好地进行 *sql 备份。但是表列值具有空值。使用以下命令恢复转储时,由于\N备份文件 (ttables.sql) 中的 null ( ) 值而出现一些错误。

有什么办法可以避免备份转储文件中出现 \N 字符?或者我使用的备份/恢复命令有什么问题吗?

(Postgres 9.1 版)

0 投票
1 回答
6257 浏览

postgresql - pg_restore 告诉模式“测试”已经存在,但实际上并不存在

像这样恢复转储时:

这些错误消息被打印出来:

但当:

这些被打印出来了

似乎模式“测试”还不存在,为什么会出现这种错误?

0 投票
0 回答
28 浏览

postgresql - 是否有使用 pg_restore 删除、创建和导入数据库的快捷方式?

我目前经常这样做

我看到pg_restore有一个-C选项,但它不包括删除数据库,只需创建它。-c掉落物体,但它总是缠结在一起。

显然我可以编写一个简短的脚本来做到这一点,但我只是想知道是否pg_resotre已经有了这个选项。

0 投票
1 回答
151 浏览

postgresql - Herkou pg_restore 到已更改的数据库

我想知道如果我正在使用 Heroku Postgres 并且我想App 1.0转储pg_restore一个App 2.0. 问题是App 2.0有新的字段和表,pg_restore文档写道:

... 将发出必要的命令,将数据库重建到保存时的状态。

我不想将数据库重建到它所在的状态App 1.0,我只想获取数据并将其放在新的数据库中,我添加的表和字段不应与转储文件中的数据冲突。

一种选择是pg_restore“将数据库重建为保存时的状态”,然后再次运行迁移。这是最好的方法吗?可能有更好的方法,谢谢您的建议。

0 投票
3 回答
5015 浏览

postgresql - pg_restore 到在 docker 容器中运行的 postgres

我有一个数据库备份,我想将其还原到在 docker 容器内运行的 postgres 数据库。

我在 OS X 上使用 docker-
machine。Postgres 图像是postgres:9.4.

这是我到目前为止想出的脚本:

但这不起作用。我得到错误:

0 投票
1 回答
141 浏览

linux - 恢复 postgres 备份失败,并且在 /home/myuser 中显示了一个具有奇怪名称 (???2@ؾ>?yqus????>I?[?[??i?Ď) 的不可删除文件

我在安装了 Linux 的 Azure VM 上有一个 postgresql 数据库。我需要从一个名为latest.dump. 我将此文件复制到/home/myuser然后运行psql mydb < latest.dump​​.

屏幕上输出了很多乱码,例如

一旦结束,它就会在命令提示符下预先输入这个字符串:

如果我按回车键,我只会得到很多command not found错误。

最令人费解的是,一个新文件出现在/home/myuser(即latest.dump保存的同一级别)。它有一个奇怪的名字???2@ؾ>?yqus????>I?[ޏI??i?Ď

如果我尝试sudo rm ???2@ؾ>?yqus????>I?[ޏI??i?Ď,我会得到rm: cannot remove ‘???2@ؾ’: No such file or directory。然后如果我再做一次,我会在 /home/myuser 中ls看到两个latest.dump文件,而不是???2@ؾ>?yqus????>I?[ޏI??i?Ď. 这些新文件是?yqus????I?[ޏI??i?Ď. 我可以删除这两个,但永远不会???2@ؾ>?yqus????>I?[ޏI??i?Ď。我注意到这两个新创建的文件的名称是原始文件的文件名的一部分(>如果你仔细观察,它们会被分开)。

顺便说一句,我登录了我的 postgres 数据库以查看恢复是否有效。它没有,没有数据被填充并且psql mydb < latest.dump基本上失败了。

谁能指出这里到底发生了什么以及如何删除这些新创建的错误文件?


在里面latest.dump,我看到 SQL 如下:

还有很多数据“胡言乱语”,例如:

注意:如有需要,请询问更多信息

0 投票
6 回答
35371 浏览

postgresql - Postgres 教程:pg_restore:[archiver] 输入文件似乎不是有效的存档

我正在学习 Postgres DVD 教程,并且在导入他们的示例数据库时遇到了问题。

跑步pg_restore -U postgres -d dvdrental ~[filepath]/dvd-database.tar.gz给了我pg_restore: [archiver] input file does not appear to be a valid archive

到目前为止,我的过程如下:

  1. 下载dvdrental.zip文件
  2. 使用将其解压缩到 .tar tar czf dvd-database.tar.gz dvdrental.zip(我也尝试先将 zip 解压缩到一个文件夹,结果相同,然后删除 .gz)
  3. pg_restore -U postgres -d dvdrental ~[filepath]/dvd-database.tar如上所述运行。

我目前正在使用 Postgres 9.5,这可能会导致问题。寻找一个答案,指出我在这个过程中哪里出错或如何将 Postgres 数据库的存档更新到 9.5。