【问题标题】:Does repmgr replicate "CREATE TABLESPACE"?repmgr 是否复制“CREATE TABLESPACE”?
【发布时间】:2021-06-01 19:54:19
【问题描述】:

我的备用数据库已关闭,因为备用服务器上的表空间不可用。

错误:

2021-06-01 15:16:30.061 EDT [21279] FATAL:  directory "/data/xxx_data_tblsp" does not exist
2021-06-01 15:16:30.061 EDT [21279] HINT:  Create this directory for the tablespace before restarting the server.
2021-06-01 15:16:30.061 EDT [21279] CONTEXT:  WAL redo at 2DDA/8DC6A528 for Tablespace/CREATE: 665042024 "/data/xxx_data_tblsp"

repmgr 是否复制“CREATE TABLESPACE”语句?

如果是,我该如何启用它?

软件版本:

postgres (PostgreSQL) 10.17 (Ubuntu 10.17-1.pgdg18.04+1)

repmgr --version repmgr 5.2.0

提前致谢!

【问题讨论】:

    标签: postgresql repmgr


    【解决方案1】:

    Repmgr 使用 PostgreSQL 流复制,并复制存储在表中的所有内容。由于表空间存储在pg_catalog.pg_tablespace 中,因此它们也会被复制。

    你遇到的问题是,表空间是一个对象,在数据库之外有一个组件:数据所在的目录。在运行CREATE TABLESPACE 之前,您必须在文件系统上创建该目录。现在流复制将复制CREATE TABLESPACE,但它不能复制目录的创建。这样做也没有多大意义,因为该目录应该位于已挂载的文件系统中。

    复制会停止,直到您在备用服务器上创建表空间目录,正如错误消息告诉您的那样。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-16
      • 2023-04-01
      • 2020-12-03
      • 2014-11-02
      • 2014-02-27
      相关资源
      最近更新 更多