[英]How to uninstall outdated version of mongodb on OS X?
我在OS X上安装了过时的mongodb版本(1.8.2),我一生无法解决如何摆脱它。 我认为是几年前安装的。 使用brew update && brew upgrade mongo
对其进行brew update && brew upgrade mongo
我提供了mongo客户端的最新版本(2.4.9),但是当我打开客户端并运行时
use admin
db.runCommand({buildInfo:1})
我懂了
{
...
"version" : "1.8.2",
...
}
当我问
which mongo
我懂了
/usr/local/bin/mongo
这是(预期的)符号链接
/usr/local/Cellar/mongodb/2.4.9/bin/mongo
也
/usr/local/opt/mongodb
似乎正确地链接到
/usr/local/Cellar/mongodb
在/usr/local/Cellar/mongodb
,我发现了两个过时的版本(其中一个是1.8.2),并移动了两个版本以查看会发生什么。 答案是什么。 Mongo Client仍会启动,并报告客户端版本为2.4.9,但是db.runCommand({buildInfo:1})
仍报告1.8.2。 我已经通过自制软件卸载并重新安装了,但是只是不知道罪魁祸首在哪里。 任何帮助将不胜感激。
基于您在OS X中运行MongoDB的事实,这是我的假设:
如果我的3个假设全部正确,则可以手动删除所有mongoDB可执行文件。 它们可能都应该在同一目录中。 将该目录以及dbpath和日志路径的内容移至回收站。
在mongo shell中运行getCmdLineOpts命令将帮助您识别dbpath和日志路径http://docs.mongodb.org/manual/reference/command/getCmdLineOpts/
此链接包含有关重新安装MongoDB的说明: http : //docs.mongodb.org/manual/tutorial/install-mongodb-on-os-x/
如果您有任何问题,请告诉我。
它是brew update
,然后brew upgrade mongodb
而不是brew update mongo
。
谢谢你们的投入。 答案竟然是蒙古的一个特别顽固的版本。 它被设置为使用launchctl在系统启动时启动,因此即使我重新启动计算机,它也仍然存在。 我按照这篇相当老的文章中的建议从launchctl中删除了它,然后通过从mongo shell运行以下命令停止了mongod:
> use admin
> db.shutdownServer()
之后,我从/usr/local/Cellar/mongodb/2.4.9/homebrew.mxcl.mongodb.plist
复制了自制的mongo plist文件到/Library/LaunchDaemons
并运行
$ sudo launchctl load /Library/LaunchDaemons/homebrew.mxcl.mongodb.plist
重新启动计算机,似乎所有2.4.9都运行良好。
如果您安装了旧版本,最好使用ls /usr/local/Cellar
检查文件夹
因为我手动选择使用MongoDB 2.6,所以我在名为mongodb26
的文件夹下进行了安装。 在这种情况下,仅执行brew uninstall mongodb
将不起作用。 我不得不做brew uninstall mongodb26
。 只是要知道一点好处。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.