尝试使用 Yum 重新安装 MongoDB。首先它说包未安装,然后它说已安装?

尝试使用 Yum 重新安装 MongoDB。首先它说包未安装,然后它说已安装?

我的服务出现问题,无法启动。我正尝试通过重新安装来解决问题。当我尝试启动或停止服务时,我看到以下内容:

在此处输入图片描述

当我尝试使用 Yum 卸载 MongoDB 时,出现以下信息:

yum remove mongodb-org-2.6.1-2.x86_64 mongodb-org-server-2.6.1-2.x86_64 mongodb-org-    shell-2.6.1-2.x86_64 mongodb-org-mongos-2.6.1-2.x86_64 mongodb-org-tools-2.6.1-2.x86_64
Loaded plugins: fastestmirror, security
Setting up Remove Process
No Match for argument: mongodb-org-2.6.1-2.x86_64
Loading mirror speeds from cached hostfile
* base: mirrors.usc.edu
* extras: mirror.ancl.hawaii.edu
* rpmforge: mirror.hmc.edu
* updates: repos.lax.quadranet.com
Package(s) mongodb-org-2.6.1-2.x86_64 available, but not installed.
No Match for argument: mongodb-org-server-2.6.1-2.x86_64
Package(s) mongodb-org-server-2.6.1-2.x86_64 available, but not installed.
No Match for argument: mongodb-org-shell-2.6.1-2.x86_64
Package(s) mongodb-org-shell-2.6.1-2.x86_64 available, but not installed.
No Match for argument: mongodb-org-mongos-2.6.1-2.x86_64
Package(s) mongodb-org-mongos-2.6.1-2.x86_64 available, but not installed.
No Match for argument: mongodb-org-tools-2.6.1-2.x86_64
Package(s) mongodb-org-tools-2.6.1-2.x86_64 available, but not installed.
No Packages marked for removal

然后,当我再次卸载软件包时,它显示:

yum remove mongodb-org-2.6.1-2.x86_64 mongodb-org-server-2.6.1-2.x86_64 mongodb-org-    shell-2.6.1-2.x86_64 mongodb-org-mongos-2.6.1-2.x86_64 mongodb-org-tools-2.6.1-2.x86_64
Loaded plugins: fastestmirror, security
Setting up Remove Process
No Match for argument: mongodb-org-2.6.1-2.x86_64
Loading mirror speeds from cached hostfile
 * base: mirror.hmc.edu
 * extras: mirror.us.leaseweb.net
 * rpmforge: mirror.hmc.edu
 * updates: repos.lax.quadranet.com
Package(s) mongodb-org-2.6.1-2.x86_64 available, but not installed.
No Match for argument: mongodb-org-server-2.6.1-2.x86_64
Package(s) mongodb-org-server-2.6.1-2.x86_64 available, but not installed.
No Match for argument: mongodb-org-shell-2.6.1-2.x86_64
Package(s) mongodb-org-shell-2.6.1-2.x86_64 available, but not installed.
No Match for argument: mongodb-org-mongos-2.6.1-2.x86_64
Package(s) mongodb-org-mongos-2.6.1-2.x86_64 available, but not installed.
No Match for argument: mongodb-org-tools-2.6.1-2.x86_64
Package(s) mongodb-org-tools-2.6.1-2.x86_64 available, but not installed.
No Packages marked for removal

答案1

仔细查看这两组yum状态消息;它们 100% 相同。它们都显示尝试卸载,并显示如下消息:

软件包 mongodb-org-2.6.1-2.x86_64 可用,但未安装。

这意味着该软件包mongodb-org-2.6.1-2.x86_64可从yum软件包存储库获得,但实际上并未安装在您的系统上。

你刚才尝试卸载后重新安装

yum install mongodb-org-2.6.1-2.x86_64 mongodb-org-server-2.6.1-2.x86_64 mongodb-org-shell-2.6.1-2.x86_64 mongodb-org-mongos-2.6.1-2.x86_64 mongodb-org-tools-2.6.1-2.x86_64

完成此操作后,软件应该重新安装,您只需运行以下命令即可启动它:

sudo service mongod start

答案2

尝试一下

  • 停止 mongod 服务

    sudo service mongod stop
    
  • 删除包

    sudo yum erase $(rpm -qa | grep mongodb-org)
    
  • 删除数据目录

    sudo rm -r /var/log/mongodb
    sudo rm -r /var/lib/mongo
    

创建 /etc/yum.repos.d/mongodb-org-3.0.repo 文件,以便您可以使用 yum 直接安装 MongoDB

hold the following configuration for [email protected]

[mongodb-org-3.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.0  /x86_64/
gpgcheck=0
enabled=1

然后点击这个

 sudo yum install -y mongodb-org

您必须配置 SELinux 以允许 MongoDB 在基于 Red Hat Linux 的系统(Red Hat Enterprise Linux 或 CentOS Linux)上启动。

--通过在 /etc/selinux/config 中将 SELINUX 设置更改为禁用来完全禁用 SELinux

 SELINUX=disabled

--通过将 SELINUX 设置更改为宽容,将 /etc/selinux/config 中的 SELinux 设置为宽容模式

 SELINUX=permissive

如果处于强制模式,请为 SELinux 启用对相关端口(例如 27017)的访问。有关 MongoDB 默认端口的更多信息,请参阅默认 MongoDB 端口。对于默认设置,可以通过运行

semanage port -a -t mongod_port_t -p tcp 27017

相关内容