Mac下安装 MongoDB
Posted 希希里之海
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mac下安装 MongoDB相关的知识,希望对你有一定的参考价值。
2018年更新:
更为简单的方法:
通过 homebrew 安装:brew install mongodb
如果报错:
mongodb: A full installation of Xcode.app 8.3.2 is required to compile this software. Installing just the Command Line Tools is not sufficient. Xcode can be installed from the App Store. Error: An unsatisfied requirement failed this build.
说明Xcode版本过低,需要更新,如果你不想更新,可以通过使用命令:
homebrew search mongodb
查看更低版本的MongoDB,然后安装更低版本的MongoDB。
brew install mongodb@3.4
启动MongoDB服务:
brew services start mongodb@3.4
关闭MongoDB服务:
brew services stop mongodb@3.4
进入MongoDB图形化界面:
mongo
查看homebrew安装的服务情况:
brew services list
Mac 下安装 MongoDB 一般有两种方法,一种是通过源码安装,一种是直接使用 homebrew ,个人推荐使用 homebrew ,简单粗暴。
1.安装 homebrew :
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
2.使用 homebrew 安装 MongoDB :
brew install mongodb
喝杯茶的功夫就安装好了。
这时 MongoDB 将被安装在 /usr/local/Cellar/mongodb/3.4.6 (我的 MongoDB 版本是 3.4.6) 。
3.配置 MongoDB:
安装完 MongoDB 后,需要配置一下 MongoDB ,不然是无法启动服务端的。
(1)创建根目录下 data/db 文件夹:
mkdir -p /data/db
如果出现 permission denied ,加上 sudo 命令:
sudo mkdir -p /data/db
(2)给 /data/db 文件夹赋予权限:
sudo chown id -u /data/db
如果出现 "illegal user name" 的错误提示,这时我们可以查看当前的 username 并赋予权限:
$ whoami
username
$ sudo chown username /data/db
(3)添加环境变量:
打开 .zshrc 文件;
vim ~/.zshrc
添加 MongoDB 安装目录到环境变量中:
export PATH=/usr/local/Cellar/mongodb/3.4.6/bin:${PATH}
执行命令使环境变量生效:
source ~/.zshrc
(4)修改 MongoDB 配置文件, 配置文件默认在 /usr/local/etc 下的 mongod.conf:
# Store data in /usr/local/var/mongodb instead of the default /data/db
dbpath = /data/db
# Append logs to /usr/local/var/log/mongodb/mongo.log
logpath = /usr/local/var/log/mongodb/mongo.log
logappend = true
# Only accept local connections
bind_ip = 127.0.0.1
(5)我们来尝试启动服务端:
$ mongod
当出现 waiting for connections on port 27017 这些字样时,我们的服务器已经启动成功,它正在运行和侦听端口27017
。这样就可以开始与服务器进行交互了,例如只需打开一个新的终端选项卡并运行 mongo
,这将打开 mongo 的交互式控制台并连接到默认服务器(localhost:27017
):
到现在,我们服务器已经启动成功,接下来就可以进行操作了,输入 show dbs 等命令试试~
以上是关于Mac下安装 MongoDB的主要内容,如果未能解决你的问题,请参考以下文章