|
MongoDB 启动、停止、相关系统配置及安全性设置
启动MongoDB
./mongod —-help 查看帮助说明
mac-abeen:bin abeen$ sudo ./mongod --dbpath=/datatest/db --logpath=/datatest/db/test.log --port=27017 —fork
使用配置文件
mac-abeen:bin abeen$ ./mongod --config ./mongodb.conf
配置文件内容
1 # Start MongoDB as a daemon on port 27017
2
3 port = 27017
4 fork = true
5 dbpath = /datatest/db
6 logpath = /datatest/db/test.log
7 logappend = true
8
mongod.conf中常用的选项介绍:
--dbpath: 指定数据目录,必选,不配置会启动报错;
--port: 指定服务监听的端口,默认为27017
--logpath:指定日志路径;
--logappend:指定日志是追加模式,或者每次重启MongoDB后清理日志;默认是追加模式;
--fork:用此选项创建子进程,在后台运行MongoDB;此选项必先开启logpath选项;
--bind_ip: 指定监听的接口;默认是127.0.0.1;
--httpinterface: 设定是否在1000的端口启动一个微型的HTTP服务器;默认不开启;
--nounixsocket: 设置是否使用UNIX socket;
--noscripting: 设置是否完全禁止服务器端JavaScript脚本的运行;
系统配置
1. 禁用NUMA(非一致内存结构)
NUMA非常不利于MONGODB的运行性能,一定在服务器上禁用。
可以使用
$ numactl —interleave=all mongod [options]
2. 禁用 zone_reclaim_mode
$ echo 0 > /proc/sys/vm/zone_reclaim_mode
停止MongoDB
管理员命令,必须运行在admin数据库上
> use admin
switched to db admin
> db.shutdownServer()
server should be down...
强制关闭
db.adminCommand({“shutdown”: 1, “force”: true })
KILL 掉dbpid
kill -2 mongopid
kill -9 mongopid
kill mongopid
安全性
不要将MongoDB直接暴露到外网中,应尽可能的限制外部对MongoDB访问。最好的方式是设置防火墙,只允许内部网络地址对MongoDB的访问。
另外还可以在配置文件中加入以下选项增强安全性。
— bind_ip 指定监听接口
— nohttpinterface 关掉默认1000商品的微型http服务器
— nounixsocket UNIX socket 如果不用关掉
— noscripting 禁用javascript 脚本运行。
数据加密
连接到MongoDB的传输的数据默认不被加密,然而,mongodb支持SLL连接。
可以下载相关版本自己编译http://www.10gen.com |
|
|
|
|
|
|