1

当我想在 linux 上激活 mongo 时,我得到了这个错误并且它不会工作


$ sudo systemctl status mongod

● mongod.service - MongoDB 数据库服务器已加载:已加载(/lib/systemd/system/mongod.service;已启用;供应商预设:已禁用) 活动:自 Sun 2021-08-01 13:39:18 起失败(结果:信号) +03; 47 秒前 文档:https ://docs.mongodb.org/manual 进程:12854 ExecStart=/usr/bin/mongod --config /etc/mongod.conf (code=killed, signal=ILL) Main PID: 12854 (code =killed,信号=ILL)CPU:19ms

8 月 1 日 13:39:18 jr systemd[1]:启动 MongoDB 数据库服务器。8 月 1 日 13:39:18 jr systemd[1]: mongod.service: 主进程退出,code=killed, status=4/ILL 8 月 1 日 13:39:18 jr systemd[1]: mongod.service: 失败,结果'信号'。


当我输入 mongod 它说

$ mongod
zsh: 非法硬件指令 mongod

4

3 回答 3

3

我对相同的消息有同样的问题。似乎是处理器兼容性的问题。

找到这篇文章https://www.mongodb.com/community/forums/t/mongodb-5-0-cpu-intel-g4650-compatibility/116610

使用以下命令检查您的处理器是否具有答案中提到的标志:

cat /proc/cpuinfo

如果没有,您可以尝试使用旧版本的 mongo。在我的情况下,我的处理器无法处理 mongo4.4,但安装了 mongo4.2 并且工作正常,但取决于您的处理器和 SO。

于 2021-08-04T00:18:06.900 回答
0

也有同样的问题,上面的答案确实有很大帮助,但我发现缺少一些东西。我的问题还在于处理器兼容性,需要卸载我安装的版本并安装早期版本的 MongoDB。

这是我遵循的步骤,它为我做了

首先,卸载您安装的 MongoDB 版本,需要从 .repo 中删除使用过的 repo sources.list,否则即使在卸载后它也会继续安装那个(或最新版本)。因此,要从sources.list以下步骤中删除 repo:

  • 使用列出 sources.list 目录的内容

    ls -l /etc/apt/sources.list.d/
    
  • 使用命令删除 repo(s)

    sudo rm /etc/apt/sources.list.d/<repo_name>
    

删除存储库后,卸载 MongoDB。使用这些命令:

sudo apt purge mongodb-org*
sudo rm -r /var/log/mongodb
sudo rm -r /var/lib/mongodb

卸载 MongoDB 后,您可能想要更新包列表,因此请使用

sudo apt update

从这里开始,您可以按照手册中所述的步骤安装所需的较低版本的 MongoDB 。只需确保选择所需的版本即可。

如果碰巧您获得的较早版本也抛出相同的错误,请重复该过程,仍然转到较早版本。

于 2021-11-05T23:20:56.060 回答
0

降级到 4.4

首先,删除MongoDB

sudo apt-get purge mongodb-org*

sudo rm -r /var/log/mongodb

sudo rm -r /var/lib/mongodb

sudo rm -rf /etc/apt/sources.list.d/mongodb-org-5.0.list

安装 MongoDB 4.4

wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt- 
key add -

这对我有用似乎是一个硬件问题,尤其是 CPU

于 2022-03-05T08:40:40.723 回答