尝试恢复我的论坛时发生错误

您好,我正在尝试将论坛从 DO 恢复到 Lightsail。一切顺利,但当我尝试恢复时,出现了此错误消息:

[2024-08-03 19:46:08] ERROR: memory required is 77 MB, maintenance_work_mem is 64 MB
[2024-08-03 19:46:08] EXCEPTION: psql failed: ERROR: memory required is 77 MB, maintenance_work_mem is 64 MB

请问我该如何解决这个问题?

您的数据库有多大?

您有多少内存?

这是一个标准安装吗?

1 个赞

我的数据库为 80mb。
VPS 为 16 GB RAM
是的,这是标准安装

奇怪。

我会进入容器,安装vim,编辑postgres配置文件以增加它抱怨的设置(使用“sv restart postgres”重启),然后从命令行恢复。

1 个赞

我找不到这个文件。你知道在哪里可以找到它吗?

您在重新安装 discourse 时是否执行了此命令:./discourse-setup?

./launcher enter app
路径: /etc/postgresql/13/main/postgresql.conf
路径中的 13 是版本号,而我们的版本可能不同。请转到 /etc/postgresql 文件夹进行查看

是的,它自动识别了我的内存。

我甚至尝试过进行新的干净安装,但现在它在上传完成前就报错了。

似乎什么都不管用了。我也尝试过使用 rsync 恢复。

我现在无法通过命令行发送备份,但稍后我会尝试通过命令行恢复。目前,我收到“权限被拒绝(公钥)”。但这并不是 discourse 的问题。

您可以按照我的方法恢复网站备份。

  1. 备份网站文件和 app.yml。将它们下载到您的 Windows 顶部。
  2. 重新安装 vps 系统,建议使用 Debian 或 Ubuntu。
  3. 安装 Docker 先决条件(基于 Debian/Ubuntu 发行版示例)
sudo apt install docker.io
sudo apt install git
  1. 安装 Discourse
sudo -s
git clone https://github.com/discourse/discourse_docker.git /var/discourse
cd /var/discourse
chmod 700 containers
  1. 编辑 Discourse 配置(强调部分)
. /discourse-setup

执行命令后,系统会提示您输入域名,您需要按 Ctrl+C 取消操作,因为您已备份 app.yml。
6. 进入 Discourse 配置文件夹

1. cd /var/discourse/containers/ #进入配置文件夹
2. rm app.yml #删除默认创建的配置文件
3. 将备份的 app.yml 上传到此文件夹
4. cd ... # 返回到 discourse 文件夹
5. . /launcher rebuild app #重建 discourse
  1. 重建 Discourse 后,开始恢复过程
1. mkdir /var/discourse/shared/standalone/backups/default/ #为备份文件创建文件夹。
2. cd /var/discourse/shared/standalone/backups/default/ #进入文件夹并将您的网站备份文件上传到此文件夹。
3. cd /var/discourse/ #返回到 discourse 文件夹。
4. . /launcher enter app #进入 discourse 容器
5. discourse enable_restore #启用 discourse 恢复功能
6. discourse restore your-site-backup.tar.gz #通过替换 your-site-backup.tar.gz 为您的网站备份文件名来开始恢复备份
1 个赞

路径是正确的,我找到了要编辑的行。我设置了 80MB 的限制 + 重启应用程序,效果非常好。我非常高兴。非常感谢 Sheng 和 @pfaffman

2 个赞

我们很高兴能帮到您

1 个赞

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.