gpt4 book ai didi

directory - 从 pg_data 目录恢复 Postgres 数据库

转载 作者:行者123 更新时间:2023-12-04 02:53:14 24 4
gpt4 key购买 nike

我有一个损坏的虚拟机,它无法使用旧的 postgresql 数据库启动(用于运行 PostgreSQL 8.4)。我可以访问文件系统(和 pg_data 目录)。

如何从此数据目录中提取数据(或恢复数据库)?

是否像将此目录的内容复制到工作的 8.4 pg_data 目录一样简单?

最佳答案

其实就是这么简单。以下是我为使其正常工作所采取的步骤:

1) 将 data 目录 (/var/lib/postgres/8.4/data) 存档到一个 tar.gz 文件中。

2) 将文件移动到工作工作站(我的桌面,运行基于 Debian 的 Linux 发行版)

3) 安装 PostgreSQL APT 存储库并使用在 the PostgreSQL Linux downloads for Ubuntu 中找到的说明安装 postgresql-8.4(或损坏服务器上的版本) .

4) 将 tar.gz 文件的内容提取到"new"PostgreSQL 8.4 安装的主目录 (/var/lib/postgresql/8.4/main/)。

5) 修改postgresql.conf,将port = 5432改为port = 5433。这允许我们使用端口号控制我们连接到哪个版本的 PostgreSQL(假设我们的工作站上有最新的稳定版本,例如 9.1)。所以9.1会留在默认的5432上,8.4会在5433上。

6) 修改提取数据目录的所有权,使 postgres 成为所有者:chown -R postgres:postgres/var/lib/postgresql/8.4/main/*

7) 启动 postgres 服务:service postgresql start(你会看到两个版本都启动了)

8) su 作为 postgres 并使用端口 5433 连接,以及旧服务器上的数据库名称:psql -p 5433 DatabaseName

关于directory - 从 pg_data 目录恢复 Postgres 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17172640/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com