nodejs里使用mongo的coll.findOne方法,返回err为not master,怎么解决啊?
发布于 9 年前 作者 zuokanmingyuli 4490 次浏览 最后一次编辑是 8 年前 来自 问答

代码如下,是放在js里的,不是在控制台上的: not master.jpg 两个err分别如下: (1) findone的err.jpg (2) coll.insert里的err.jpg 不是master可能是因为我的mongodb是托管在别的网站mongohq上的,这问难题怎么解决啊??本虾米初学,请大牛指点啊!!

3 回复

不是主节点,推测你应该做了复制集或者是主从,主从的话理论是都有读权限,但是如果是复制集的话默认只有活跃节点有读写权限,备份节点仅作备份使用。这时候如果你去备份节点上读取数据有可能出现这个问题。

@haozxuan 感谢啊!我在研究书上的代码,那么做复制集或者是主从可能是哪里做的啊,我想找到那个位置就可以解决这个问题了吧,是不是该把节点设置为活跃的或设置slaveOk=true?我进入数据库的代码如下,请大神帮我看看是不是这里 6.jpg

@zuokanmingyuli 哦,不是的。从你的描述来看你用的数据源(数据库)应该不是你自己的。数据库的部署是dba配置的。slaveOk=true也必须数据源设置才有效,应用层是不需要动的。

回到顶部