当我想在 Linux 上激活 mongo 时,我收到此错误,但它不起作用
$ sudo systemctl 状态 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 (代码=killed,信号=ILL) 主PID:12854(代码=killed,信号=ILL) CPU:19ms
8 月 1 日 13:39:18 jr systemd[1]:启动 MongoDB 数据库服务器。 8 月 1 日 13:39:18 jr systemd[1]: mongod.service: 主进程退出,代码=killed,状态=4/ILL 8 月 1 日 13:39:18 jr systemd[1]:mongod.service:失败,结果为“信号”。
当我输入 mongod 时 它说
$ mongod
zsh:非法硬件指令 mongod
我有同样的问题,同样的消息。看来是处理器兼容性的问题。
找到这篇文章https://www.mongodb.com/community/forums/t/mongodb-5-0-cpu-intel-g4650-compatibility/116610
使用以下命令检查您的处理器是否具有答案中提到的标志:
cat /proc/cpuinfo
如果没有,您可以尝试使用旧版本的 mongo。 就我而言,我的处理器无法处理 mongo4.4,但安装了 mongo4.2 并且工作正常,但取决于您的处理器和 SO。
也有同样的问题,上面的答案确实有很大帮助,但我发现缺少一些东西。我的问题还在于处理器兼容性,需要卸载我已安装的版本并安装早期版本的 MongoDB。
这是我遵循的步骤,对我来说是这样的
首先,卸载已安装的 MongoDB 版本,需要从
sources.list
中删除使用过的存储库,否则即使卸载后,它也会继续安装该版本(或最新版本)。因此,要从 sources.list
中删除存储库,请按照以下步骤操作:
使用
列出sources.list目录的内容ls -l /etc/apt/sources.list.d/
使用命令删除存储库
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。只需确保选择您想要的版本即可。
如果您使用的较早版本也抛出相同的错误,请重复该过程,仍然转到较早版本。
首先,删除 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