我的Postgres数据库在Amazon EC2实例上运行。我为某些每月表创建了几个表空间,因此每个表都在单个表格上。为了获得最大的性能,我在单个Amazon EBS卷上创建了每个表空间。

我想将其中一些表移至不同的实例和数据库。我将以一个示例来解释它。可以说。

  1. 如上所述,我有带有Postgres设置的EC2实例A。

  2. 我还有另一个Amazon实例B正在运行,并且在上面也安装了Postgres。

  3. 我想为A ON B中的某些表创建相同的表结构。

  4. 另外,我想在实例B上创建表格,该表格将指向新附件的卷。

  5. 而且,当我启动这个新创建的Postgres时,我希望看到填充这些卷(数据库)数据的表。

  6. 最后,我将从一个删除这些表

我知道我在书面生锈,但找不到更好的方法来提出这个问题。

沿着这些线是可能的吗?有什么指示可以实现这样的事情吗?

有帮助吗?

解决方案

不。

表空间目录中的数据仅是数据。您还需要pg_catalog模式中表中的元数据,以及pg_clog和pg_xlog的信息来访问它。

如果您想使用卷跨越跨度,则必须一次移动整个安装(包括PG_DEFAULT在内的所有表空间)。否则,您需要使用pg_dump/pg_restore将数据传输到上面。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top