mongodb的启动方式
2016-12-13 13:30
267 查看
Mongodb的安全模式默认是关闭,此时它需要在一个可信任的运行环境中。
在可信任的环境中使用默认的关闭安全模式最简单,但是需要确保可信任的设备访问数据库的TCP端口,
这通常需要隔离数据库所在设备,使其完全无法访问外部网络。
确保网络安全
1, 在分片式环境中
a,集群中的所有的mongodb进程(mongos, mongod, mongod--configsvr)应该是能相互连接的。
b,客户端必须能够连接到mongos进程,但是,它们可以从mongod被阻塞。
2,在非分片式副本环境中
a,所有客户端必须能连接所有非隐藏的副本集成员。
b,副本集的所有成员(mongod进程)需要能够相互通信。
IP 地址绑定
默认情况下,mongod服务器将监听设备上所有可用的IP地址。可以在mongod的"bind_ip"配置项中限制监听的IP地址。
TCP端口号
mongodb默认监听下列端口号:
独立mongod服务:27017
mongos服务: 27017
分片服务(mongod --shardsvr): 27018
配置服务(mongod --configsvr):27019
mongod的网站统计页面端口:通常是28017,即独立mongod服务端口号加1000, 可以用--nohttpinterface 命令行参数禁止统计页面。
以上端口可以更改但不推荐。
在安全模式下运行(使用 --auth 或者 --keyFile)
mongodb支持身份验证和简单的粗粒度访问控制的"安全模式". 可以通过--anth和--keyFile命令行参数启用。
一个通过用户名密码认证的特定数据库,一旦通过认证,普通用户能够完全读写数据库。还可以创建只读用户,使其只有读取权限。
admin数据库是一个特殊的库。一些管理命名只能在admin数据库运行(所以只能由admin运行)。
当然,用户能访问admin数据库也能读写在服务或集群中的其他数据库。
注意:即使使用安全模式,也应该设置合理的防火墙策略。
启动Mongodb服务有两种方式,前台启动或者Daemon方式启动,前者启动会需要保持当前Session不能被关闭,后者可以作为系统的fork进程执行,下文中的path是mongodb部署的实际地址。
1.最简单的启动方式,前台启动,仅指定数据目录,并且使用默认的27107端口,cli下可以直接使用./mongo连上本机的mongodb,一般只用于临时的开发测试。
2. 启动绑定固定的IP地址、端口,这就mongo在连接mongod的时候就需要指定IP和端口了。
3. daemon后台运行,简单的是命令后面加“&”。
或者使用mongod自带的--fork参数,此时必须指定log的路径。
4. (推荐)以配置文件形式保存配置。
然后启动mongod时引入配置文件
./mongod -f /path/mongod.conf
下面是mongod启动的常用参数详细说明:
在可信任的环境中使用默认的关闭安全模式最简单,但是需要确保可信任的设备访问数据库的TCP端口,
这通常需要隔离数据库所在设备,使其完全无法访问外部网络。
确保网络安全
1, 在分片式环境中
a,集群中的所有的mongodb进程(mongos, mongod, mongod--configsvr)应该是能相互连接的。
b,客户端必须能够连接到mongos进程,但是,它们可以从mongod被阻塞。
2,在非分片式副本环境中
a,所有客户端必须能连接所有非隐藏的副本集成员。
b,副本集的所有成员(mongod进程)需要能够相互通信。
IP 地址绑定
默认情况下,mongod服务器将监听设备上所有可用的IP地址。可以在mongod的"bind_ip"配置项中限制监听的IP地址。
TCP端口号
mongodb默认监听下列端口号:
独立mongod服务:27017
mongos服务: 27017
分片服务(mongod --shardsvr): 27018
配置服务(mongod --configsvr):27019
mongod的网站统计页面端口:通常是28017,即独立mongod服务端口号加1000, 可以用--nohttpinterface 命令行参数禁止统计页面。
以上端口可以更改但不推荐。
在安全模式下运行(使用 --auth 或者 --keyFile)
mongodb支持身份验证和简单的粗粒度访问控制的"安全模式". 可以通过--anth和--keyFile命令行参数启用。
一个通过用户名密码认证的特定数据库,一旦通过认证,普通用户能够完全读写数据库。还可以创建只读用户,使其只有读取权限。
admin数据库是一个特殊的库。一些管理命名只能在admin数据库运行(所以只能由admin运行)。
当然,用户能访问admin数据库也能读写在服务或集群中的其他数据库。
注意:即使使用安全模式,也应该设置合理的防火墙策略。
启动Mongodb服务有两种方式,前台启动或者Daemon方式启动,前者启动会需要保持当前Session不能被关闭,后者可以作为系统的fork进程执行,下文中的path是mongodb部署的实际地址。
1.最简单的启动方式,前台启动,仅指定数据目录,并且使用默认的27107端口,cli下可以直接使用./mongo连上本机的mongodb,一般只用于临时的开发测试。
1 | ./mongod --dbpath=/path/mongodb |
1 | ./mongod --dbpath=/path/mongodb --bind_ip=10.10.10.10--port=12345 |
2 | //连接mongod |
3 | ./mongo 10.10.10.10:12345 |
1 | ./mongod --dbpath=/path/mongodb --bind_ip=10.10.10.10--port=12345 & |
1 | ./mongod --dbpath=/path/mongodb--fork= true logpath=/path/mongod.log |
1 | port=12345 |
2 | bind_ip=10.10.10.10 |
3 | logpath=/path/mongod.log |
4 | pidfilepath=/path/mongod.pid |
5 | logappend= true |
6 | fork= true |
./mongod -f /path/mongod.conf
下面是mongod启动的常用参数详细说明:
参数 | 说明 | 取值示例 |
dbpath | mongodb数据文件存储路径 | /data/mongodb |
logpath | mongod的日志路径 | /var/log/mongodb/mongodb.log |
logappend | 日志使用追加代替覆盖 | true |
bind_ip | 绑定的IP | 10.10.10.10 |
port | 绑定的端口 | 27107 |
journal | write操作首先写入“日记”,是一个数据安全的设置,具体参考官方文档。 | true |
相关文章推荐
- mongodb启动
- 当Spring遇见MongoDB,五分钟搞定CRUD
- mongoDB 按照时间字段分组 【24小时,周,月,年】
- 【MongoDB】6.关于MongoDB存储文件的 命令执行+代码执行
- ThinkJS中如何使用MongoDB的CURD操作
- 【MongoDB】5.MongoDB与java的简单结合
- MongoDB学习笔记~数据模型属性为集合时应该为它初始化
- Mongodb自己封装的工具类
- MongoDB-JAVA-Driver 3.2版本常用代码全整理(4) - 地理空间索引
- MongoDB-JAVA-Driver 3.2版本常用代码全整理(3) - 聚合
- MongoDB-JAVA-Driver 3.2版本常用代码全整理(2) - 查询
- MongoDB-JAVA-Driver 3.2版本常用代码全整理(1) - 增删改
- CentOS7安装MongoDB3.4
- MongoDB 工具之mongostat
- go 使用mongodb
- MongoDB 的创建、查询、更新、删除
- mongoDB的使用一:环境搭建
- Mongodb初次安装过程
- 将Mongodb中NumberLong类型转String类型方法
- windows7_32位系统下添加mongodb到windows服务