gpt4 book ai didi

database - 将表空间从一个 postgresql 实例复制到另一个

转载 作者:搜寻专家 更新时间:2023-10-30 20:32:38 25 4
gpt4 key购买 nike

我正在寻找一种快速将数据库从一个 postgresql 服务器“克隆”到另一个服务器的方法。

假设...

  • 我有一个在 HostA 上运行的 postgresql 服务器,为 2 个数据库提供服务
  • 我在 HostA 上安装了 2 个设备,每个设备存储其中一个数据库的数据(即 1 个数据库 => 1 个表空间 => 1 个设备)
  • 我能够通过一些谨慎的方法获得“安全”的时间点快照
  • 我能够始终如一地安全地生成所使用的任何 2 台设备的克隆(我什至可以假设这两个数据库只接收读取)
  • 涉及的主机为CentOS 5.4

是否可以在 HostB 上托管第二个 postgresql 服务器,安装其中一个克隆设备并让相应的数据库“弹出”存在? (有点像在 MySQL 中复制 MyISAM 表文件)。

如果这完全可能,机制是什么(即我应该研究什么 DDL 或 pg 命令)?

对我来说,能够独立移动各个数据库非常重要。但是,如果这不可能,类似的方法是否可以在服务器级别工作(尝试通过将 datadir 复制到具有相同 postgresql 安装的主机来克隆和重新生成服务器)?

最佳答案

不容易,因为有许多文件在数据库之间共享,这意味着同一安装中的每个数据库都依赖于此。

您可以在服务器级别或集群级别执行此操作,但不能在单个数据库级别执行。只要确保复制/克隆整个数据目录和所有外部表空间即可。只要您可以原子方式进行克隆(在同一文件系统上或使用可以跨文件系统执行原子克隆的系统),您甚至不需要停止 hostA 上的数据库来执行此操作。

关于database - 将表空间从一个 postgresql 实例复制到另一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2114363/

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