mongodb在secondary不能直接获取primary的信息解决方法

本文涉及的产品
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
简介:

如果通过shell访问mongo,要在secondary进行查询。会出现如下错误:                 

1
2
3
4
5
[root@mongodb-secondary2 ~] # mongo
MongoDB shell version: 3.0.9
connecting to:  test
abc:SECONDARY> show dbs
2016-02-20T02:13:18.527+0800 E QUERY    Error: listDatabases failed:{  "note"  "from execCommand" "ok"  : 0,  "errmsg"  "not master"  }

有两种方法实现从机的查询:
第一种方法:db.getMongo().setSlaveOk();
第二种方法:rs.slaveOk();
但是这种方式有一个缺点就是,下次再通过mongo进入实例的时候,查询仍然会报错,为此可以通过下列方式



为避免没有设置权重情况下,有几多台mongodb下都vi .mongorc.js,增加一行内容:rs.slaveOk(); ,这是可以避免原本是primary,避免primary发生故障后另一个secondary切换为primary,原本的primary修复好变成secondary时候执行rs.slaveOk()时候没有权限..
最好加x权限给.mongorc.js这个文件:

1
2
3
vi  monogorc.js
rs.slaveOk()
:wq


1
2
[root@mongodb-secondary1 ~] #
chmod  u+x  .mongorc.js


这样的话以后每次通过mongo命令进入都可以查询了

1
2
3
4
5
6
7
8
[root@mongodb-secondary1 ~] # mongo
MongoDB shell version: 3.0.9
connecting to:  test
abc:PRIMARY> use mydb
switched to db mydb
abc:PRIMARY> show tables
system.indexes
testc


上面的方法可以解决secondary再次登录不再提示"not master"。



     本文转自wsw26 51CTO博客,原文链接:,http://blog.51cto.com/wsw26/1744267如需转载请自行联系原作者



相关实践学习
MongoDB数据库入门
MongoDB数据库入门实验。
快速掌握 MongoDB 数据库
本课程主要讲解MongoDB数据库的基本知识,包括MongoDB数据库的安装、配置、服务的启动、数据的CRUD操作函数使用、MongoDB索引的使用(唯一索引、地理索引、过期索引、全文索引等)、MapReduce操作实现、用户管理、Java对MongoDB的操作支持(基于2.x驱动与3.x驱动的完全讲解)。 通过学习此课程,读者将具备MongoDB数据库的开发能力,并且能够使用MongoDB进行项目开发。   相关的阿里云产品:云数据库 MongoDB版 云数据库MongoDB版支持ReplicaSet和Sharding两种部署架构,具备安全审计,时间点备份等多项企业能力。在互联网、物联网、游戏、金融等领域被广泛采用。 云数据库MongoDB版(ApsaraDB for MongoDB)完全兼容MongoDB协议,基于飞天分布式系统和高可靠存储引擎,提供多节点高可用架构、弹性扩容、容灾、备份回滚、性能优化等解决方案。 产品详情: https://www.aliyun.com/product/mongodb
相关文章
|
7月前
|
监控 NoSQL 固态存储
【MongoDB】Secondary同步慢问题
【4月更文挑战第2天】【MongoDB】Secondary同步慢问题
|
4月前
|
运维 监控 NoSQL
【MongoDB 复制集秘籍】Secondary 同步慢怎么办?深度解析与实战指南,让你的数据库飞速同步!
【8月更文挑战第24天】本文通过一个具体案例探讨了MongoDB复制集中Secondary成员同步缓慢的问题。现象表现为数据延迟增加,影响业务运行。经分析,可能的原因包括硬件资源不足、网络状况不佳、复制日志错误等。解决策略涵盖优化硬件(如增加内存、升级CPU)、调整网络配置以减少延迟以及优化MongoDB配置(例如调整`oplogSize`、启用压缩)。通过这些方法可有效提升同步效率,保证系统的稳定性和性能。
112 4
|
4月前
|
C# 开发者 Windows
全面指南:WPF无障碍设计从入门到精通——让每一个用户都能无障碍地享受你的应用,从自动化属性到焦点导航的最佳实践
【8月更文挑战第31天】为了确保Windows Presentation Foundation (WPF) 应用程序对所有用户都具备无障碍性,开发者需关注无障碍设计原则。这不仅是法律要求,更是社会责任,旨在让技术更人性化,惠及包括视障、听障及行动受限等用户群体。
96 0
|
NoSQL 数据库连接 MongoDB
基于Mongodb实现商品管理系统之根据商品编号查询商品信息编写讲解|学习笔记
快速学习基于 Mongodb 实现商品管理系统之根据商品编号查询商品信息编写讲解
|
NoSQL 数据库连接 API
基于Mongodb实现商品管理系统之查询所有商品信息编写讲解|学习笔记
快速学习基于 Mongodb 实现商品管理系统之查询所有商品信息编写讲解
HDM
|
Web App开发 监控 NoSQL
MongoDB负载信息一目了然 阿里云HDM重磅发布MongoDB监控和诊断功能
混合云数据库管理(HDM)的监控和诊断功能新增了对MongoDB的支持。 通过直观的方式将MongoDB多个维度的负载信息统一整合,不仅可以清晰的查看实时负载信息,也可以方便的确认历史负载情况,同时也支持自定义性能监控大盘。
HDM
4075 0