当在SECONDARY 节点读取操作,报如下错误: rs0:SECONDARY> show tables; 2020-08-26T10:34:53.196+0800 E QUERY [thread1] Error: listCollections failed: { "operationTime" : Timestamp(1598409284, 2), "ok" : 0, "errmsg" : "not master and slaveOk=false", "code" : 13435, "codeName" : "NotMasterNoSlaveOk", "$clusterTime" : { "clusterTime" : Timestamp(1598409284, 2), "signature" : { "hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="), "keyId" : NumberLong(0) } } } : 原因: SECONDARY 是不允许读写操作的。 解决方法一: 在SECONDARY 节点中执行 rs.slaveOk(); 解决方法二:添加到js文件中,连接mongo时,启动shell的时候自动加载。 vi ~/.mongorc.js rs.slaveOk();