您的位置:首页技术文章

mongodb root用户创建数据库提示not master的解决

【字号: 日期:2023-05-18 10:36:30浏览:2作者:猪猪
目录
  • mongodb root用户创建数据库提示not master
    • 问题如题
    • 解决方法
  • mongodb "errmsg" : "not master and slaveOk=false"的解决
    • 总结

      mongodb root用户创建数据库提示not master

      问题如题

      问题也比较简单, 就是master挂了

      mongodb的集群似乎和mysql,redis的不太一样,这个我也不太清楚

      总之单机不会出现这种情况,集群会出现

      解决方法

      就是将master重启就可以了

      mongodb "errmsg" : "not master and slaveOk=false"的解决

      是正常的,因为SECONDARY是不允许读写的,如果非要解决执行 rs.slaveOk() 这句命令就可以了

      [yukw@mongodb4 data]$ ./mongo -port 20000
      MongoDB shell version v3.4.4
      connecting to: mongodb://127.0.0.1:20000/
      MongoDB server version: 3.4.4
      Server has startup warnings:
      2019-07-31T17:06:43.397+0800 I CONTROL [initandlisten]
      2019-07-31T17:06:43.397+0800 I CONTROL [initandlisten] ** WARNING: Access control is not enabled for the database.
      2019-07-31T17:06:43.398+0800 I CONTROL [initandlisten] ** Read and write access to data and configuration is unrestricted.
      2019-07-31T17:06:43.398+0800 I CONTROL [initandlisten]
      2019-07-31T17:06:43.398+0800 I CONTROL [initandlisten]
      2019-07-31T17:06:43.398+0800 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
      2019-07-31T17:06:43.398+0800 I CONTROL [initandlisten] ** We suggest setting it to 'never'
      2019-07-31T17:06:43.398+0800 I CONTROL [initandlisten]
      2019-07-31T17:06:43.398+0800 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
      2019-07-31T17:06:43.398+0800 I CONTROL [initandlisten] ** We suggest setting it to 'never'
      2019-07-31T17:06:43.398+0800 I CONTROL [initandlisten]

      > show users
      2019-07-31T17:07:33.469+0800 E QUERY [thread1] Error: not master and slaveOk=false :
      _getErrorWithCode@src/mongo/shell/utils.js:25:13
      DB.prototype.getUsers@src/mongo/shell/db.js:1537:1
      shellHelper.show@src/mongo/shell/utils.js:752:9
      shellHelper@src/mongo/shell/utils.js:659:15
      @(shellhelp2):1:1
      > show dbs
      2019-07-31T17:07:39.126+0800 E QUERY [thread1] Error: listDatabases failed:{
      "ok" : 0,
      "errmsg" : "not master and slaveOk=false", ##报错提示
      "code" : 13435,
      "codeName" : "NotMasterNoSlaveOk"
      } :
      _getErrorWithCode@src/mongo/shell/utils.js:25:13
      Mongo.prototype.getDBs@src/mongo/shell/mongo.js:62:1
      shellHelper.show@src/mongo/shell/utils.js:769:19
      shellHelper@src/mongo/shell/utils.js:659:15
      @(shellhelp2):1:1
      > rs.slaveOk(); ##执行命令
      > show dbs
      local 0.000GB
      > show users
      >

      好了,这就是解决not master and slaveOk=false的方法了

      总结

      以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

      标签: MongoDB