首先这是正常的,因为SECONDARY是不允许读写的, 在写多读少的应用中,使用Replica Sets来实现读写分离。通过在连接时指定或者在主库指定slaveOk,由Secondary来分担读的压力,Primary只承担写操作。
对于replica set 中的secondary 节点默认是不可读的,
[mongodb@ligh bin]$ mongo 127.0.0.1:33333
MongoDB shell version: 2.0.1
connecting to: 127.0.0.1:33333/test
SECONDARY> db.user.find()
error: { "$err" : "not master and slaveok=false", "code" : 13435 }
SECONDARY> db.getMongo()
connection to 127.0.0.1:33333
SECONDARY> db.getMongo().setSlaveOk();
not master and slaveok=false
在主库上设置 slaveok=ok
[mongodb@ligh bin]$ mongo 127.0.0.1:33333
MongoDB shell version: 2.0.1
connecting to: 127.0.0.1:33333/test
PRIMARY> db.getMongo().setSlaveOk();
PRIMARY>
在从库进行测试
SECONDARY> db.user.find()
{ "_id" : ObjectId("4eb68b1540643e10a0000000"), "id" : 1, "name" : "zhangsan" }
{ "_id" : ObjectId("4eb68b1540643e10a0000001"), "id" : 2, "name" : ";lisi" }
另外可参考如下解决方案:
http://stackoverflow.com/questions/8990158/mongdodb-replicates-and-error-err-not-master-and-slaveok-false-code
转自 http://blog.163.com/lgh_2002/blog/static/44017526201301123736391/
相关推荐
使用mongodb时,出现“not master and slaveok=false”错误,原因是secondary不允许读写。 因为系统中mongodb做了主备,主备切换了,也可能导致这个问题。 把命令mongo –username=root –password=123456 –host=...
总之,解决 "not master and slaveok=false" 错误的关键在于理解MongoDB的副本集机制和读写策略,以及正确配置客户端连接。通过适当监控和管理副本集,可以避免这类问题,并确保数据库系统的稳定运行。了解和掌握...
在分布式系统中,为了确保数据的高可用性和容错性,MongoDB提供了两种复制模式:master-slave(主从模式)和master-master(主主模式)。本实验将深入探讨这两种模式的工作原理、设置方法以及它们在实际应用中的优...
在 MongoDB 副本集中,存在一些常见的问题,例如从库中无法查看数据的原因是 not master and slaveOk=false,解决办法是从库中执行 rs.slaveOk() 命令。 MongoDB 副本集搭建需要经过多个步骤,包括安装环境准备、...
MongoDB的Master-Slave主从模式是一种常见的数据复制策略,用于实现数据的备份和负载均衡。在这种模式中,一个MongoDB实例作为主节点(Master),负责处理所有的写操作,而其他的实例作为从节点(Slave),复制主...
2. **处理“not master and slaveOk=false”错误**: - 当在从服务器尝试查询时,可能会遇到上述错误。 - 解决方案是启用`slaveOk()`选项: ```javascript rs.slaveOk(); ``` #### 六、日志检查与总结 1. **...
(3) 修改logstash目录下的 Gemfile 文件 添加配置 gem "logstash-input-mongodb", :path => "./logstash-input-mongodb-master" (4) logstash bin目录下执行 logstash-plugin install --no-verify 命令安装 ...
### MongoDB 1067 错误解决方法详解 #### 错误概述 在尝试启动MongoDB服务时,用户可能会遇到“Windows无法启动MongoDB服务 错误1067:进程意外终止”的问题。这一错误提示通常意味着MongoDB服务在启动过程中遇到...
在"mongodb-master.zip"这个压缩包中,我们可以看到一系列与MongoDB相关的资源,结合描述中的技术栈,我们可以深入探讨如何将MongoDB集成到基于Spring、SpringMVC、MyBatis、SpringBoot以及前端Vue.js和ElementUI的...
### MongoDB与Python模式及流程详解 #### 一、引言 在当今的数据处理领域,MongoDB作为一种流行的文档导向型数据库,因其灵活性、可扩展性以及高性能而受到广泛欢迎。结合Python这一强大的编程语言,可以实现高效...
MongoDB-CSharp ============== This is a community supported release of a driver to connect to MongoDB using .Net.
<package id="MongoDB.Bson" version="2.8.1" targetFramework="net46" /> <package id="MongoDB.Driver" version="2.8.1" targetFramework="net46" /> <package id="MongoDB.Driver.Core" version="2.8.1" target...
"MongoDB 安装出错解决方法" MongoDB 是一款非常流行的 NoSQL 数据库管理系统,但是在安装过程中经常会遇到各种错误,特别是在自定义安装路径时。下面我们将详细介绍 MongoDB 安装出错解决方法。 安装路径问题 在...
【AspNetWebApi-OutputCache-MongoDb-master】项目是一个针对ASP.NET Web API的自定义缓存解决方案,它利用MongoDB数据库来存储Web API的输出缓存。该项目的主要目的是提高Web API服务的性能,通过将频繁请求的数据...
mongodb-manual-master.epub,是mongodb的官方手册,官方教程
day1:MongoDB数据库与其他数据库区别介绍及学习方法 day2:MongoDB运行环境搭建及运行 day3:MongoDB增删改查操作实践 day4:教你学会MongoDB聚合操作 day5:索引的特性及应用 day6:MongoDB实例搭建仓位管理API day7:...
本项目结合Etcd和MongoDB实现了一个基于这种架构的crontab系统,旨在提供可扩展、高可用的定时任务调度解决方案。以下是该系统的详细知识点解析: 1. **Etcd**:Etcd是一款开源的分布式键值存储系统,由CoreOS开发...