VirtualBox环境下CentOS安装MongoDB 4.0企业版遇命令不存在问题咨询
排障核心结论
- 报错
bash: mongodb: command not found和VirtualBox虚拟化层没有关系,虚拟机内的CentOS文件路径、命令执行逻辑和物理机完全一致,不存在专属的路径偏移问题。 - 你当前的操作存在两个关键疏漏,直接导致命令找不到:
- 创建yum仓库文件时文件名错误:你执行
touch mongodb-enterprise创建的文件缺失.repo后缀,yum只会读取/etc/yum.repos.d/目录下后缀为.repo的配置文件,无后缀的文件不会被系统识别。 - 完成repo配置后未执行MongoDB安装操作,系统中并未部署MongoDB对应的二进制程序文件,调用命令自然会提示不存在。
- 创建yum仓库文件时文件名错误:你执行
补全修正的正确操作流程
- 清理错误的仓库文件
cd /etc/yum.repos.d rm -f mongodb-enterprise - 重新创建正确的仓库配置文件
- 执行命令创建带正确后缀的文件:
touch mongodb-enterprise.repo - 用vim打开文件,按
i进入插入模式,粘贴以下配置内容:[mongodb-enterprise] name=MongoDB Enterprise Repository baseurl=https://repo.mongodb.com/yum/redhat/$releasever/mongodb-enterprise/4.0/$basearch/ gpgcheck=1 enabled=1 gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc - 按
ESC退出插入模式,输入:wq保存退出vim
- 执行命令创建带正确后缀的文件:
- 执行MongoDB安装
- 刷新yum源缓存:
yum makecache - 安装4.0版本对应的MongoDB企业版组件:
yum install mongodb-enterprise-4.0.10 mongodb-enterprise-server-4.0.10 mongodb-enterprise-shell-4.0.10 mongodb-enterprise-mongos-4.0.10 mongodb-enterprise-tools-4.0.10 -y
- 刷新yum源缓存:
- 验证安装结果
- 执行
which mongod,能输出类似/usr/bin/mongod的路径,就说明命令已经可以被系统正常识别。
- 执行
手动数据目录的权限调整
你之前在根目录创建/data/db作为数据存储目录的操作本身没有路径问题,但MongoDB服务默认以专用mongod用户运行,需要给目录配置正确的属主权限,否则启动时会报权限读写错误:
chown -R mongod:mongod /data/db
内容的提问来源于stack exchange,提问作者damon.ponder
相关产品推荐
相关产品推荐

