【问题标题】:Recover PostgreSql database 9.1 with Mac用 Mac 恢复 PostgreSql 数据库 9.1
【发布时间】:2014-05-09 18:35:07
【问题描述】:

我使用 PostgreSql 和 PgAdmin,我遇到了一次意外导致我的 Mac 格式化,这里我有两个选择,通过 TimeMahine 恢复所有系统或从零安装所有系统。

我选择了从零开始安装,但是我需要恢复旧的 PostgreSql 数据库,现在我要重新安装,pgAdmin 等,但是我没有旧数据库的任何备份,我有旧的 PostgreSql数据库系统文件(感谢 TimeMachine),

如何将旧数据库恢复到新数据库?

我尝试这样做,来自http://www.postgresql.org/docs/8.1/static/backup-file.html

tar -cf backup.tar /usr/local/pgsql/data

问题是数据文件(我认为)在/Library/PostgreSQL/9.1/data 中,并且文件夹被加密或隐藏¿?

我无法执行tar 命令,这就是发生的情况:

 tar -cf backup.tar "/Volumes/backup/Backups.backupdb/MacBook, MacBook Pro de Albert/2014-04-30-112220/Macintosh HD/Library/PostgreSQL/9.1/data"

我收到此错误:

tar: /Volumes/backup/Backups.backupdb/MacBook, MacBook Pro de Albert/2014-04-30-112220/Macintosh HD/Library/PostgreSQL/9.1/data: Cannot stat: No such file or directory
tar: Error exit delayed from previous errors.

【问题讨论】:

  • 大概这个data 是一个符号链接,指向您磁盘上不再存在的目录,或者可以通过其他路径访问。

标签: postgresql


【解决方案1】:

另一种选择是将 TimeMachine 文件夹 /9.1/ 复制到新的 9.3 旁边并尝试以下操作:

How to restore a file system level copy of a PostgreSQL database (not dump) to a different PC

但是在执行 pg_dump 时问我一个我没有的密码。

傻瓜解决方法:卸载pgAdmin 9.3,安装pgAdmin 9.1,这里检测到文件夹9.1,告诉我要使用它¡完美!这正是我所需要的。

现在我可以保留 9.1 或升级到 9.3

【讨论】:

  • 没有“pgAdmin 9.1”或“pgAdmin 9.3”
  • 对不起:pgAdmin es 应用程序在 Mac tat 控制服务器-数据库-表等非常有用,pgAdmin 安装会创建这个文件夹和数据库