mongodb在secondary不能直接获取primary的信息解决方法
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,如果通过shell访问mongo,要在secondary进行查询。会出现如下错误:[root@mongodb-secondary2 ~]# mongoMongoDB shell version: 3.
千家信息网最后更新 2026年10月31日mongodb在secondary不能直接获取primary的信息解决方法
如果通过shell访问mongo,要在secondary进行查询。会出现如下错误:
[root@mongodb-secondary2 ~]# mongoMongoDB shell version: 3.0.9connecting to: testabc:SECONDARY> show dbs2016-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这个文件:
vi monogorc.jsrs.slaveOk():wq
[root@mongodb-secondary1 ~]#chmod u+x .mongorc.js
这样的话以后每次通过mongo命令进入都可以查询了
[root@mongodb-secondary1 ~]# mongoMongoDB shell version: 3.0.9connecting to: testabc:PRIMARY> use mydbswitched to db mydbabc:PRIMARY> show tablessystem.indexestestc
上面的方法可以解决secondary再次登录不再提示"not master"。
方法
查询
时候
原本
方式
权限
为此
这样的话
一行
内容
再次
可以通过
命令
实例
就是
情况
故障
文件
最好
权重
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网与科技
西安纸贵互联网科技有限公司
科技和互联网公司
科技创新与互联网经济
新华互联网科技学院
北京互联网科技公司
上海挚品互联网科技
华中科技大学互联网
善班互联网科技有限公司
互联网科技网站
科技互联网创业计划书
中国互联网金融科技基金
山东吉时兔互联网科技有限公司
重庆互联网医院沙龙医盟信息科技
本届互联网博览会上的黑科技
明优互联网科技有限公司
2021互联网科技公司排名
电子商务与互联网科技的关系
昆明中奇联合互联网科技
中国科技和美国互联网
百单网互联网科技有限公司怎么样
互联网和科技技术
科技互联网项目
岳阳华臻互联网科技有限公司
青岛科技大学互联网大赛研究生
互联网科技与大数据专业
上海京穆互联网科技有限公司
互联网科技快讯热点
互联网科技接地气
恒生科技指数 中概互联网
- 上一篇
搭建高可用的Replication集群归档大量的冷数据
冷热数据分离业务不断地在增长,集群分片中的数据也会随着时间的推移而增加,其中有相当一部分的数据是很少被使用的,例如几年前的订单记录、交易记录、商品评论等数据。这部分数据就称之为冷数据,与之相反经常被使
- 下一篇
Slave: received 0 length packet from server, apparent master shutdown
又是server-id这个参数的原因[@more@]过完节第一天检查数据库,发现一台mysql的slave报出大量的Slave: received 0 length packet from serve