恢复数据库 PostgreSQL

Restoring Database PostgreSQL

我的一台服务器感染了病毒,Windows 中的 Postgres 服务不是 运行 备份,我使用的是 Odoo8,甚至 Odoo 服务也不是 运行。

是否可以仅使用一个 OID 目录来恢复数据库,据我所知这是 Postgres 的数据库文件。

我假设您指的是 /data/base/<oid> 目录。不幸的是,这还不够。有一些设置存储在数据库 oid 目录之外,正如您所说的那样。

例如:

  • /data/glboal/ - 集群用户设置(密​​码、角色等)
  • /data/pg_xlog/ - WAL 条目 - 可能还没有 "transfered" 对数据库文件进行事务更改。
  • /data/pg_tblspc/ - 表空间

您需要整个 /data 目录。阅读更多关于 PHYSICAL BACKUP.

编辑:

因此,如果整个 /data 可用,您可以将数据库还原到其他服务器。你应该记住一件事:目标 postrges 集群必须在同一个 varsion ex。 9.4.1。当第一个和第二个数字匹配时(例如 9.2.109.2.16),这在大多数情况下也应该有效。请记住,您只需将目标服务器上的 /data/ 目录替换为您的源 /data 目录(目标服务器必须在该操作期间停止)。