【发布时间】:2014-12-04 17:46:24
【问题描述】:
在为测试目的创建新数据库时,我在使用 pg_restore 时遇到问题。
我做了什么:
我从我的日常备份中获取了使用
pg_dump oldDB -f /some/directory/oldDUMP.dmp创建的转储文件我已登录到 postgres 用户并使用
createdb -T template0 newDB创建了新数据库然后我尝试使用(在包含我的 oldDUMP.dmp 文件的文件夹中)
pg_restore -d newDB oldDUMP.dmp但输出告诉我,由于转储在 txt 中,所以我应该登录到 psql我以 postgres (
psql) 身份登录并再次输入pg_restore -d newDB oldDUMP.dmp。什么都没有显示(似乎有效),但没有区别 - 测试数据库仍然是空的。
我尝试从其他用户那里做同样的事情,并尝试将 psql 登录到 newDB(据我了解,唯一的 psql 命令登录到 postgres 因为我在 Linux 上登录为 postgres)但仍然没有差异。对于一些可能存在错误的日志,我不确定在哪里寻找。
我一直担心我以某种方式覆盖了一些旧数据库,但我怀疑这是可能的。
知道我做错了什么吗? 我是 Postgresql/psql(和 Linux)的新手,所以这可能是一些非常基本的问题,但我无法在 Web 中找到这样的问题。
【问题讨论】:
标签: postgresql psql