我看到有一个“备份期间只读模式”的复选框,默认未勾选。我猜想没有它备份也能正常工作——什么情况下需要这个功能呢?
我使用只读模式的唯一情况是将论坛从一个主机迁移到另一个主机。
可能存在其他用例,但这是我找到的唯一有用的场景。
我设想全局‘只读模式’在迁移场景下很有用。(所讨论的设置,大概是在备份完成后使论坛恢复读写权限,这使得它在迁移方面用处不大。)
也许我们可以移除这个设置 @eviltrout?
我相当确定我们可以移除 readonly_mode_during_backup 设置。它默认就是关闭的。与每次创建备份时向所有用户显示只读横幅带来的困扰相比,在备份过程中出现不一致状态的概率微乎其微。
pg_dump 在可序列化事务中运行,因此不一致状态仅可能在 Discourse 恰好于数据库转储开始时,正在将数据持久化到多个表中且未使用事务的情况下发生。这种情况应该非常罕见。
启用该设置仅会在数据库备份期间开启只读模式,时间不会多出一秒,因此它实际上无法用于迁移到其他主机。您最好使用 /admin/backups 中的“启用只读”按钮。
我觉得不错!你想接这个吗?
嗯……是否更好、且可行的是,确保始终使用事务?在此期间,那些拥有非常庞大且繁忙的论坛、且深感焦虑的用户可以使用“备份期间只读模式”这一选项。