MongoDB写入安全级别

写入安全(Write Concern)是一种由客户端设置的,用于控制写入安全级别的机制,通过使用写入安全机制可以提高数据的可靠性。

MongoDB提供四种写入级别,分别是:

  • (Unacknowledged)非确认式写入
  • (Acknowledged)确认式写入
  • (Journaled)日志写入
  • (Replica Acknowledged)复制集确认式写入

1. 非确认式写入

2. 确认式写入

 

3. journal日志写入

64位机器上,MongoDB 2.0以上版本默认情况下是开启journal

journal文件位于journal目录中,只能以追加方式添加数据,文件名以j._开头

数据库正常关闭时(例如:db.shutdownServer()来关闭数据库),数据库服务会清空journal目录下的所有文件

MongoDB数据库每隔100ms或30ms向journal文件中flush一次数据

journal日志和data数据在一个磁盘上时每隔100ms刷新一次,不在一个磁盘上时30ms刷新一次,建议把journal日志和data数据放在不同的磁盘上,提高数据的可靠性

 

4. 复制集确认式写入

 

5.写入安全级别的使用

W选项

0:非确认式写入

1:确认式写入

说明:这个级别下,对副本级只对主库做确认写入

2:副本级确认式写入

说明:这个级别下,副本集第一个slave写入成功后就响应给client

majority:复制级更多slave写入成功后,在响应给client

赞赏

微信赞赏支付宝赞赏

发表评论

电子邮件地址不会被公开。 必填项已用*标注