恢复数据库时出错

我在使用 Discourse 后首次尝试恢复数据库,但遇到了如下错误:

有人能帮忙吗?谢谢。

@VANHUSSEN

你尝试过在容器内的命令行中恢复吗?

1 个赞

请勿多次发布同一问题。

1 个赞

是的,我已将备份文件上传到新服务器的 /var/www/discourse/public/backups/default/ 目录。

进入新服务器上的 /var/www/discourse/ 目录。

cd /var/www/discourse/

安装依赖项。

sudo gem install thor

进入 Discourse 管理仪表盘设置备份,勾选 允许恢复

接下来,运行以下命令从备份恢复站点。

RAILS_ENV=production script/discourse restore file-name-of-the-backup-file.tar.gz

恢复完成后,重启 Discourse。

sudo systemctl restart discourse discourse-sidekiq

然后刷新 Discourse 网页。

但在执行步骤:
sudo gem install thor

时我遇到了错误。为什么?

抱歉,Jeff Atwood,我多次发布了相同的问题帖子。

你好 @VANHUSSEN

根据你发布的少量错误信息来看,你运行的 Ruby 版本似乎存在问题。

至少,你第一条帖子中发布的错误信息表明了这一点。

你是否尝试过重新构建你的容器,然后再运行恢复流程?

1 个赞

我尝试了以下命令:
移除 ruby2.5-dev

sudo apt remove ruby2.5-dev

从 PPA 安装 ruby2.6-dev

sudo apt install software-properties-common
sudo apt-add-repository ppa:brightbox/ruby-ng
sudo apt install ruby2.6-dev

但依然出现错误。请帮忙解决。

你好 @VANHUSSEN

或许,与其使用当前方式,不如直接重建默认支持的容器会更好。

./launcher rebuild app

当然,前提是您的 Discourse 容器已在 app.yml 中指定。

1 个赞

我在没有使用 Docker 的情况下安装了 Discourse。

xen@xen:~$ lsb_release -a

没有可用的 LSB 模块。
发行版 ID: Ubuntu
描述:       Ubuntu 18.04.4 LTS
版本:        18.04
代号:       bionic

如果您正在运行生产环境的 Discourse 应用并在 Support 频道寻求支持,我建议您使用 Docker 进行安装。

如果您是开发者且安装环境并非用于生产,那又是另一回事了 :slight_smile:,您可以考虑在 Dev 频道发帖。

1 个赞

如果这不是开发环境安装,则必须使用 Docker。

您需要遵循 标准安装指南,我们才能提供技术支持。