MacOS系统中MongoDB安装、启动与关闭服务

MongoDB Java Driver 增删改查操作

1、选择版本下载

官方地址:https://www.mongodb.com/download-center

2、将MongoDB添加到环境变量中

我是用的是zsh,所以在用户目录下的.zshrc文件中底部,添加如下内容

MONGODB_HOME=/Users/liurenkui/myLibrary/mongodb-osx-x86_64-3.4.7
export PATH=".:$PATH:$MONGODB_HOME/bin"

然后,重新刷新环境变量

➜  ~ source .zshrc

然后,验证是否配置成功,比如下面的配置成功输出

➜  ~ mongod -version
db version v3.4.7
git version: cf38c1b8a0a8dca4a11737581beafef4fe120bcd
OpenSSL version: OpenSSL 0.9.8zh 14 Jan 2016
allocator: system
modules: none
build environment:
    distarch: x86_64
    target_arch: x86_64
➜  ~

3、启动数据库

脚本启动或配置文件启动

mongod --dbpath $dbpath --logpath $logpath --logappend --fork

  • --dbpath:数据库文件路径

  • --logpath:数据库日志路径

  • --logappend:追加日志

  • --fork:数据库服务放在后台运行

在mongo的安装路径下,新建data和log两个目录

屏幕快照 2017-08-27 18.18.52.png

然后使用下面方式运行MongoDB服务

➜  myLibrary cd mongodb-osx-x86_64-3.4.7
➜  mongodb-osx-x86_64-3.4.7 ls
GNU-AGPL-3.0        README              bin                 log
MPL-2               THIRD-PARTY-NOTICES data
➜  mongodb-osx-x86_64-3.4.7 mongod --dbpath data --logpath log/mongod.log --logappend --fork
about to fork child process, waiting until server is ready for connections.
forked process: 1858
child process started successfully, parent exiting
➜  mongodb-osx-x86_64-3.4.7 mongo
MongoDB shell version v3.4.7
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.4.7
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
	http://docs.mongodb.org/
Questions? Try the support group
	http://groups.google.com/group/mongodb-user
Server has startup warnings:
2017-08-27T18:08:31.083+0800 I CONTROL  [initandlisten]
2017-08-27T18:08:31.083+0800 I CONTROL  [initandlisten] ** WARNING: Access control is not enabled for the database.
2017-08-27T18:08:31.083+0800 I CONTROL  [initandlisten] **          Read and write access to data and configuration is unrestricted.
2017-08-27T18:08:31.083+0800 I CONTROL  [initandlisten]
> 1+1
2
>

关闭MongoDB服务

关闭服务需要使用admin用户权限,如下所示

> db.shutdownServer()
shutdown command only works with the admin database; try 'use admin'
> use admin
switched to db admin
> db.shutdownServer()
2017-08-28T12:27:31.737+0800 I NETWORK  [thread1] trying reconnect to 127.0.0.1:27017 (127.0.0.1) failed
2017-08-28T12:27:31.737+0800 W NETWORK  [thread1] Failed to connect to 127.0.0.1:27017, in(checking socket for error after poll), reason: Connection refused
2017-08-28T12:27:31.737+0800 I NETWORK  [thread1] reconnect 127.0.0.1:27017 (127.0.0.1) failed failed 
server should be down...
>
> exit
bye

MongoDb web用户界面

MongoDB提供简单的http用户界面,要启动该功能 需要在启动的时候指定参数 --rest

➜  mongodb-osx-x86_64-3.4.7 mongod --dbpath data --logpath log/mongod.log --logappend --rest
2017-08-28T12:30:26.312+0800 I CONTROL  [main] ** WARNING: --rest is specified without --httpinterface,
2017-08-28T12:30:26.313+0800 I CONTROL  [main] **          enabling http interface

mongoDB web界面访问端口比服务多100
http://localhost:28017

屏幕快照 2017-08-28 13.11.42.png

查看mongo服务进程

➜  ~ ps -ef | grep mongo
  501  1292  1229   0 12:30PM ttys000    0:14.84 mongod --dbpath data --logpath log/mongod.log --logappend --rest
  501  1439  1412   0  1:15PM ttys001    0:00.00 grep --color=auto --exclude-dir=.bzr --exclude-dir=CVS --exclude-dir=.git --exclude-dir=.hg --exclude-dir=.svnmongo
➜  ~

杀掉进程

上面的1292就是mongo服务的进程pid,使用kill命令将其杀掉

➜  ~ kill 1292

查看端口占用情况

如果有启动报错的情况 先查看mongo进程 如果有占用就kill掉,如果还不行就去在数据库data目录下把 mongod.lock删掉再启动

➜  ~ lsof -i tcp:27017
COMMAND  PID      USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
mongod  1760 liurenkui    7u  IPv4 0xf17d695f2b00c745      0t0  TCP *:27017 (LISTEN)

参考阅读

MacOS系统中MongoDB安装与启动

MongoDB常用语句


未经允许请勿转载:程序喵 » MacOS系统中MongoDB安装、启动与关闭服务

点  赞 (2) 打  赏
分享到: