我最近开始使用NodeJS进行开发。在我参加的课程中,他们给了我在Mac上安装的步骤,但这给我带来了问题。经过谷歌搜索,我知道macOS Catalina已经阻止了对根文件夹的写入访问。之后,我花了一天时间在谷歌和Stack Overflow上搜索这个问题的解决方案。有许多不同的解决方案,但都不起作用。有些已安装,但mongod
命令不起作用。甚至MongoDB上的安装过程本身也不起作用。
最后,我决定使用MongoDB Atlas。因此,在我的集群0中,我转到了Connect>连接mongo
外壳>我没有安装MongoDB。他们给出了一些安装Homebrew的步骤。现在,当我键入mongo "mongodb+srv://cluster0.hflrg.mongodb.net/<dbname>" --username <myUserName>
时,它连接到MongoDB Atlas。mongod
命令仍然不起作用。
你能告诉我在Mac上安装MongoDB的方法吗。我有macOS Catalina 10.15.5版本。
注意:我对终端没有太多经验,所以如果可能的话,请避免使用";添加so和so的$PATH变量";,并尝试详细解释。非常感谢。
我通常喜欢从MongoDB Community Server下载.tgz包进行安装,并通过命令行进行设置
-
从MongoDB社区服务器下载.tgz包
-
从下载的档案中提取文件:
tar -zxvf mongodb-macos-*.tgz
- 在PATH环境变量中复制二进制文件:
sudo cp /path/to/the/mongodb-directory/bin/* /usr/local/bin/
- 创建数据目录:
sudo mkdir -p /usr/local/var/mongodb
IMPORTANT
Starting with macOS 10.15 Catalina, Apple restricts access to the MongoDB default data directory of /data/db. On macOS 10.15 Catalina, you must use a different data directory, such as /usr/local/var/mongodb.
- 创建日志目录:
sudo mkdir -p /usr/local/var/log/mongodb
- 运行MongoDB:
mongod --dbpath /usr/local/var/mongodb --logpath /usr/local/var/log/mongodb/mongo.log
要在后台运行mongod,请在命令行末尾使用--fork:
mongod --dbpath /usr/local/var/mongodb --logpath /usr/local/var/log/mongodb/mongo.log --fork
有用的链接和参考:
在macOS tarball上安装MongoDB
macOS Catalina v10.15+上的MongoDB
希望这些能有所帮助!祝你过得愉快!
使用Homebrew,默认情况下使用/usr/local
。
brew tap mongodb/brew
brew install mongodb/brew/mongodb-community
brew services start mongodb/brew/mongodb-community
mongo --quiet --eval 'db.version()'
4.2.8
这对我有效,但基于@Erni_Souza 的回答
-
从这里下载.tgz包MongoDB Community Server。
-
使用
tar -zxvf mongodb-macos-*.tgz
提取机器上的文件,或者只使用机器上默认的Archive Utility.app。 -
使用将二进制文件复制到
/usr/local/bin
文件夹中按照指示使用
sudo cp /path/to/the/mongodb-directory/bin/* /usr/local/bin/
,或者您可以通过提取到的文件夹中的Terminal.app使用./mongod
命令。 -
创建数据目录
mkdir -p ~/data/db
-
运行mongodb
mongod --dbpath ~/data/db
或与./mongod --dbpath ~/data/db
如果二进制文件仍在您将其提取到的目录中。
您可以查看macOS Catalina v10.15+上的MongoDB链接,如@Erni_Souza的回答所示,以了解更多信息。