我在/
根分区上有一个 postgresql 数据库(63GB 中使用了 61GB),所以我要求 VPS 提供商添加更多磁盘(50GB 到/mnt/vdb1
)
如何将另一个数据目录添加到该新分区(使用符号链接或其他东西)?
这样新创建的表不使用/var/lib/postgresql/10/main/base
而是使用/mnt/vdb1
。我一直在寻找,但似乎多个数据目录仅在旧PostgreSQL 6/7上可用?
我在/
根分区上有一个 postgresql 数据库(63GB 中使用了 61GB),所以我要求 VPS 提供商添加更多磁盘(50GB 到/mnt/vdb1
)
如何将另一个数据目录添加到该新分区(使用符号链接或其他东西)?
这样新创建的表不使用/var/lib/postgresql/10/main/base
而是使用/mnt/vdb1
。我一直在寻找,但似乎多个数据目录仅在旧PostgreSQL 6/7上可用?
正如您所指出的,您可以使用表空间来将数据拆分到多个驱动器上。但是使用表空间会使恢复和迁移等事情变得更加困难。此外,您必须实际将一些对象移动到这个空间,否则它不会完成任何事情。您将其设置为默认值,但这仅适用于新对象,它不会自动将现有对象的存储溢出到新表空间。任何单个对象都不能拆分。
真的有必要吗?在 63GB 主驱动器中,有多少是数据库本身使用的,而不是其他东西使用的?与其使用表空间,不如将整个数据库移动到新驱动器会更干净,假设它有足够的空间来单独保存它。如果大部分 61GB 用于该数据库,那么这当然行不通。在这种情况下,为了使事情更易于管理,我可能会删除表空间,并要求他们为您创建一个足够大的新驱动器,以单手容纳整个数据库,然后将整个东西移到它上面。
没关系找到它
tablespace
,它现在被调用