MongoDB 2.x写关注{w:1}真的等于{safe:true}吗?

问题描述:

标题说明了一切,真的。我似乎无法在文档中找到'safe'关键字的正确答案,但w:1 =等待独立服务器(可以是replicaSet env中的主服务器),这似乎符合我对“安全”的理解。MongoDB 2.x写关注{w:1}真的等于{safe:true}吗?

此外,我们在mongodb上启用日记功能,{j:true}使其与{safe:true}兼容。

http://docs.mongodb.org/manual/core/write-operations/#write-concern

+1

基本上,是的。对于第二个,默认为'{j:true}','{w:1}'。 http://docs.mongodb.org/manual/core/write-operations/#internal-operation-of-write-concern – 2013-02-10 19:09:08

是,该文件是从来不告诉然而这yyou东西,是很不错的,safew 1,有许多来源在那里,但这里是一个PHP的司机我觉得有用:

http://derickrethans.nl/mongoclient.html

借以他指出:

所有其他的莫ngoDB驱动程序正在进行类似的更改。

和:

最大的原因是,新的类将承认由上写入默认或弃用的措辞表示:MongoClient具有安全模式在默认情况下。

所以是的答案。

至于日记记录:

我们有关MongoDB启用日志,是{记者:真正},使其对{安全:真正}兼容的需要?

没有日志acked写与一般日记不同。即使您使用w 1,MongoDB仍将继续使用日记帐,但在回复您的请求之前,它不会等待写日记。默认情况下,j通常为false。

+0

您是否碰巧知道新驱动程序中的MongoClient类是否支持'safe'关键字? – bitinn 2013-02-11 08:46:57

+0

@bitinn不用PHP,你需要某种功能来判断版本。所有语言之间最容易兼容的是检查MongoClient的存在,并决定如何查询,如果你可以指望你的应用程序将使用MongoClient的驱动程序,那么不要打扰 – Sammaye 2013-02-11 08:48:13