我正在尝试在CentOS 7机器上安装mongodb 3.2并面临查找软件包的问题。
我已根据文档更新了repo文件:
[mongodb-org-3.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/
gpgcheck=0
enabled=1
运行sudo yum install mongodb-org
时出现此错误:
[centos@ip-10-24-1-228 ~]$ sudo yum install mongodb-org
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: ftp.osuosl.org
* epel: linux.mirrors.es.net
* extras: mirror.lax.hugeserver.com
* updates: mirror.hmc.edu
No package mongodb-org available.
Error: Nothing to do
为什么我会收到此消息?
答案 0 :(得分:15)
您需要配置包管理系统(yum
)。
创建一个/etc/yum.repos.d/mongodb.repo
文件以保存MongoDB存储库的以下配置信息:
如果您有64位系统,请使用以下配置:
[mongodb]
name=MongoDB Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/
gpgcheck=0
enabled=1
建议不要将32位用于生产部署,但您可以使用:
[mongodb]
name=MongoDB Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/i686/
gpgcheck=0
enabled=1
安装软件包时,您可以选择是安装当前版本还是安装上一版本。此步骤为两者提供命令。
要安装最新的稳定版MongoDB,请运行:
sudo yum install mongodb-org
要安装特定版本的MongoDB,请单独指定每个组件包,并将版本号附加到包名称,如以下安装3.2.0版本的示例所示:
yum install mongodb-org-3.2.0 mongodb-org-server-3.2.0 mongodb-org-shell-3.2.0 mongodb-org-mongos-3.2.0 mongodb-org-tools-3.2.0
如果您仍然卡住,请谨慎关注this。
答案 1 :(得分:9)
我弄明白我的问题是什么。它在我的confirm
文件
yum.conf
一旦我从exclude=mongodb-org,mongodb-org-server,mongodb-org-shell,mongodb-org-mongos,mongodb-org-tools
注释掉这一行,一切都很顺利。
答案 2 :(得分:4)
您应该知道此网址https://repo.mongodb.org/yum/redhat/ $ releasever / mongodb-org / 3.2 / x86_64 /不再有效。
转到http://repo.mongodb.org/yum/redhat/并下载mongodb-org.repo文件。
配置包管理系统(yum
),将mongodb-org.repo复制到/etc/yum.repos.d/
,以便您可以使用yum
直接安装MongoDB。
安装MongoDB软件包和相关工具。
sudo yum install -y mongodb-org mongodb-org-server
不幸的是mongodb网站文档建议使用https://docs.mongodb.org/manual/tutorial/install-mongodb-on-red-hat/,但这是错误的方法。
答案 3 :(得分:1)
这是来自Idos的Install MongoDB Community Edition on Red Hat Enterprise or CentOS Linux回答的更新版本。
创建一个/etc/yum.repos.d/mongodb.repo
文件,以便您可以使用yum
直接安装MongoDB。
对于MongoDB 3.6
使用以下存储库文件:
[mongodb-org-3.6]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.6/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.6.asc
对于早于3.6的MongoDB版本
要从早期版本系列(如3.4)安装软件包,您可以在存储库配置中指定版本系列。例如,要将系统限制为3.4版本系列,请创建一个/etc/yum.repos.d/mongodb.repo
文件以保存MongoDB 3.4存储库的以下配置信息:
[mongodb-org-3.4]
name=MongoDB 3.4 Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/
gpgcheck=0
enabled=1
您可以在存储库本身找到每个版本的.repo
个文件。请记住,奇数次要版本(例如3.5)是开发版本,不适合生产使用。
要安装最新的稳定版MongoDB,请发出以下命令:
sudo yum install -y mongodb-org
要安装特定版本的MongoDB,请单独指定每个组件包,并将版本号附加到包名称,如以下示例所示:
sudo yum install -y mongodb-org-3.6.4 mongodb-org-server-3.6.4 mongodb-org-shell-3.6.4 mongodb-org-mongos-3.6.4 mongodb-org-tools-3.6.4
安装软件包时,您可以选择是安装当前版本还是安装上一版本。此步骤为两者提供命令。
您可以通过发出以下命令来启动mongod进程:
sudo service mongod start
答案 4 :(得分:0)
@ nikolai.serdiuk似乎是正确的。 Mongo的文档中提供的baseurl似乎没有功能。用此替换该步骤(1):
yum-config-manager --add-repo http://repo.mongodb.org/yum/redhat/mongodb-org.repo
然后继续(2):
sudo yum install -y mongodb-org
希望这有帮助。
答案 5 :(得分:0)
创建一个mongodb-org.repo文件 sudo vi /etc/yum.repos.d/mongodb-org.repo
Add following content
[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-
org/3.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc
Then execute sudo yum install mongodb-org
参考:docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat /
答案 6 :(得分:0)
首先,您必须在redhat系统中创建存储库。
cd /etc/yum.repos.d/mongodb-org.repo
并输入i
,然后将其复制粘贴。
[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc
并将其保存为-输入ctrl + :
并输入: + qw
并运行此命令
yum install mongodb-org
答案 7 :(得分:0)
我知道这个问题已经存在了两年多,但是最近在 Mongo DB 4.0
中收到了此错误我通过以下方式检查了我的yum.conf:
vi /etc/yum.conf yum.conf
,下面一行。
exclude=courier* dovecot* exim* filesystem httpd* mod_ssl* **mongodb-org,mongodb-org-server,mongodb-org-shell,mongodb-org-mongos,mongodb-org-tools** mydns* nsd* p0f php* proftpd* pure-ftpd* spamassassin* squirrelmail*
删除了
mod_ssl* mongodb-org,mongodb-org-server,mongodb-org-shell,mongodb-org-mongos,mongodb-org-tools
并将其更改为
exclude=courier* dovecot* exim* filesystem httpd* mod_ssl* mydns* nsd* p0f php* proftpd* pure-ftpd* spamassassin* squirrelmail*
这已解决了我的问题,应该解决您的问题。
答案 8 :(得分:0)
检查并删除旧版本的mongodb
yum list installed mongodb.x86_64
yum remove mongodb.x86_64
有帮助
答案 9 :(得分:0)
朋友你好我将解决问题
首先清理旧数据
sudo rm -rf /etc/yum.repos.d/mongod*
sudo yum clean all
再次创建新的repo文件
/etc/yum.repos.d/mongodb-enterprise-4.4.repo
文件,以便您可以使用yum直接安装MongoDB Enterprise:
[mongodb-enterprise-4.4]
name=MongoDB Enterprise Repository
baseurl=https://repo.mongodb.com/yum/redhat/$releasever/mongodb-enterprise/4.4/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc
安装MongoDB Enterprise 4.4。 发出以下命令:
sudo yum install -y mongodb-enterprise
安装特定版本的MongoDB Enterprise。 要安装特定的发行版,必须单独指定每个组件包以及版本号,如以下示例所示:
sudo yum install -y mongodb-enterprise-4.4.1 mongodb-enterprise-server-4.4.1 mongodb-enterprise-shell-4.4.1 mongodb-enterprise-mongos-4.4.1 mongodb-enterprise-tools-4.4.1
如果仅安装mongodb-enterprise = 4.4.1并且不包括组件包,则无论您指定哪个版本,都将安装每个MongoDB包的最新版本。
固定一个特定版本的MongoDB Enterprise。 尽管您可以指定任何可用的MongoDB Enterprise版本,但yum会在更新版本可用时升级软件包。为了防止意外升级,请在/etc/yum.conf文件中添加以下exclude指令来固定软件包:
exclude=mongodb-enterprise,mongodb-enterprise-server,mongodb-enterprise-shell,mongodb-enterprise-mongos,mongodb-enterprise-tools
默认情况下,MongoDB使用mongod用户帐户运行,并使用以下默认目录:
/var/lib/mongo (the data directory)
/var/log/mongodb (the log directory)
➤如果通过软件包管理器安装, 将创建默认目录,并将这些目录的所有者和组设置为mongod。
➤如果通过下载tarball进行安装, 未创建默认的MongoDB目录。要创建MongoDB数据和日志目录:
sudo mkdir -p /var/lib/mongo
sudo mkdir -p /var/log/mongodb
sudo systemctl daemon-reload
sudo systemctl start mongod
任何错误都比不干净老了
选项:-不创建/ tmp以外的套接字文件 在旧的套接字文件中删除
sudo systemctl daemon-reload
sudo systemctl start mongod
sudo service mongod status
答案 10 :(得分:0)
朋友你好我将解决问题
首先清理旧数据
sudo yum erase $(rpm -qa | grep mongod)
sudo rm -rf /etc/yum.repos.d/mongod*
sudo yum clean all
再次创建新的repo文件
/etc/yum.repos.d/mongodb-enterprise-4.4.repo
文件,以便您可以使用yum直接安装MongoDB Enterprise:
[mongodb-enterprise-4.4]
name=MongoDB Enterprise Repository
baseurl=https://repo.mongodb.com/yum/redhat/$releasever/mongodb-enterprise/4.4/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc
安装MongoDB Enterprise 4.4。 发出以下命令:
sudo yum install -y mongodb-enterprise
安装特定版本的MongoDB Enterprise。 要安装特定的发行版,必须单独指定每个组件包以及版本号,如以下示例所示:
sudo yum install -y mongodb-enterprise-4.4.1 mongodb-enterprise-server-4.4.1 mongodb-enterprise-shell-4.4.1 mongodb-enterprise-mongos-4.4.1 mongodb-enterprise-tools-4.4.1
如果仅安装mongodb-enterprise = 4.4.1并且不包括组件包,则无论您指定哪个版本,都将安装每个MongoDB包的最新版本。
固定一个特定版本的MongoDB Enterprise。 尽管您可以指定任何可用的MongoDB Enterprise版本,但yum会在更新版本可用时升级软件包。为了防止意外升级,请在/etc/yum.conf文件中添加以下exclude指令来固定软件包:
exclude=mongodb-enterprise,mongodb-enterprise-server,mongodb-enterprise-shell,mongodb-enterprise-mongos,mongodb-enterprise-tools
默认情况下,MongoDB使用mongod用户帐户运行,并使用以下默认目录:
/var/lib/mongo (the data directory)
/var/log/mongodb (the log directory)
➤如果通过软件包管理器安装, 将创建默认目录,并将这些目录的所有者和组设置为mongod。
➤如果通过下载tarball进行安装, 未创建默认的MongoDB目录。要创建MongoDB数据和日志目录:
sudo mkdir -p /var/lib/mongo
sudo mkdir -p /var/log/mongodb
sudo systemctl daemon-reload
sudo systemctl start mongod
任何错误都比不干净老了
选项:-不创建/ tmp以外的套接字文件 在旧的套接字文件中删除
sudo systemctl daemon-reload
sudo systemctl start mongod
sudo service mongod status
更多信息来阅读https://docs.mongodb.com/manual/tutorial/install-mongodb-enterprise-on-red-hat/
https://www.mysterydata.com/how-to-install-mongodb-4-0-on-centos-7-rhel-7/
答案 11 :(得分:-1)
此命令
yum-config-manager --add-repo http://repo.mongodb.org/yum/redhat/mongodb-org.repo
将按照上面的建议创建repo
。然后它会工作。
答案 12 :(得分:-1)
按照以下步骤在CentOS上安装MongoDB
# vi /etc/yum.repos.d/mongodb.repo
i
并将以下行粘贴到文件中[MongoDB]
name=MongoDB Repository
baseurl=http://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.0/x86_64/
gpgcheck=0
enabled=1
按esc
保存vim文件,然后输入:wq
退出保存的文件。
3。安装MongoDB服务器
yum install mongodb-org
# systemctl start mongod.service # For CentOS 7
# service mongod restart # For CentOS 6/5
mongod --version