Mac系统MongoDB无法彻底卸载重装 执行mongo命令报错如何解决
macOS环境彻底清理MongoDB残留操作指南
问题现状
执行官方卸载流程后,终端输入mongo仍返回v5.0.9版本的shell连接报错,无法回到「命令未找到」的初始状态,报错内容如下:
MongoDB shell version v5.0.9 connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb Error: couldn't connect to server 127.0.0.1:27017, connection attempt failed: SocketException: Error connecting to 127.0.0.1:27017 :: caused by :: Connection refused : connect@src/mongo/shell/mongo.js:372:17 @(connect):2:6 exception: connect failed exiting with code 1
注:此前执行的带远程集群地址、测试账号密码的mongo连接命令,仅调用本地已安装的mongo shell连接外部公开测试集群,不会在本地写入任何持久化残留,所有残留均来自之前本地安装的MongoDB组件
清理步骤
按顺序执行以下操作即可完全清除所有MongoDB相关内容:
- 终止所有运行中的MongoDB进程
先执行命令查找所有相关进程:
结果中所有带ps aux | grep -i mongomongo/mongod字段的进程,取第二列的进程ID,执行以下命令强制终止,替换<PID>为实际查到的进程ID:sudo kill -9 <PID> - 删除所有MongoDB可执行文件
先定位当前mongo命令的实际存放路径:
针对返回的路径执行删除命令,例如返回which mongo/usr/local/bin/mongo则执行:
同时检查以下常见二进制存放路径,删除所有名称带sudo rm -rf /usr/local/bin/mongomongo的可执行文件(包括mongo、mongod、mongos、mongosh、mongodb-database-tools相关文件):/usr/local/bin//opt/homebrew/bin/(M系列芯片Mac默认Homebrew路径)/usr/bin/
如果之前用Homebrew安装过MongoDB,额外执行卸载命令:
brew uninstall --force mongodb-community mongodb-database-tools mongosh brew cleanup - 删除数据、日志、配置残留
直接执行以下命令删除所有默认路径下的MongoDB数据、日志、配置文件:sudo rm -rf /usr/local/var/mongodb /data/db ~/data/db sudo rm -rf /usr/local/var/log/mongodb sudo rm -rf /usr/local/etc/mongod.conf /etc/mongod.conf /opt/homebrew/etc/mongod.conf - 清理Shell环境变量配置
打开当前使用的Shell对应的配置文件,删除所有和MongoDB相关的PATH配置项:- zsh(Mac默认Shell)编辑
~/.zshrc - bash编辑
~/.bash_profile、~/.bashrc
保存后执行source 对应配置文件路径让配置生效。
- zsh(Mac默认Shell)编辑
验证结果
完全关闭当前终端窗口,重新打开一个新终端,输入mongo,如果返回command not found,说明已经清理完成,可以从零开始重新安装配置MongoDB。
内容的提问来源于stack exchange,提问作者Jack Z
相关产品推荐
相关产品推荐

