LOCKLOSE 发表于 2017-12-16 12:38:05

[DabaBase] MongoDB (6) 启动、停止、相关系统配置及安全性设置

  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
  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
页: [1]
查看完整版本: [DabaBase] MongoDB (6) 启动、停止、相关系统配置及安全性设置