MongoDB authentication failed


0.隨筆摘要:

  1. MongoDB  安裝配置
  2. MongoDB  權限控制
  3. MongoDB  注意事項 authentication failed

1.MongoDB  下載安裝配置

        MongoDB官網 https://www.mongodb.com/  下載安裝包, 直接next next安裝即可,可自行選擇安裝路徑。

   在MongoDB安裝路勁的bin目錄下新建配置文件mongo.config, 比如: D:\programs\mongoDB\bin\mongo.config

   mongo.config的內容:  

    dbpath=D:\data\db        #數據庫存儲位置 自己去新建對應的目錄
    logpath=D:\data\logs\mongo.log  #數據庫日志位置 自己去新建對應的目錄和文件
    auth=false             #授權登入啟禁用

  以配置文件啟動MongoDB服務;管理員身份進入cmd窗口A,cd 進入安裝路徑,比如cd D:\programs\mongoDB\bin

  進入bin目錄后,執行如下服務啟動命令(注意自建的配置文件路徑):

1 D:\programs\mongoDB\bin>mongod --config D:\programs\mongoDB\bin\mongo.config --install --serviceName "MongoDB"

  如果以前安裝和配置過MongoDB,但卸載了MongoDB,可是MongoDB服務還未刪除,管理員身份執行命令進行刪除服務:

1 D:\programs\mongoDB\bin>SC DELETE MongoDB

 

2.MongoDB  權限控制(用戶密碼)  此操作【一定】要在【命令行窗口】里進行創建用戶!!!

  服務啟動后,再多開一個cmd窗口B,cd 進入安裝路徑,比如cd D:\programs\mongoDB\bin,執行命令,創建授權root用戶: 

 

 D:\programs\mongoDB\bin>mongo
 MongoDB shell version v3.4.3
 connecting to: mongodb://127.0.0.1:27017
 MongoDB server version: 3.4.3
 > db
 test
 > use admin
 switched to db admin  
 >db.createUser(
    {
      user: "root",
      pwd: "rootpwd",
      roles: [ {role:"root", db:"admin"} ]
    }
 )

 

 

 

  mongo的權限控制,用戶密碼配置可參考http://www.2cto.com/database/201608/533458.html ,這一塊完成后,

  請在當前cmd窗口B,Ctrl+C 退出連接

  請在之前cmd窗口A,Ctrl+C 關閉MongoDB  服務,關閉窗口A

  修改和保存配置文件mongo.config:

    dbpath=D:\data\db        #數據庫存儲位置 
    logpath=D:\data\logs\mongo.log  #數據庫日志位置 
    auth=true                 #改授權登入啟用

   打開windows服務,Ctrl+Shift+ESC, 找到MongoDB服務,右鍵選擇開啟服務,那么項目或第三方工具連接MongoDB就必須使用用戶名密碼了!!!!

3.MongoDB  注意事項 authentication failed

  【一定】要在【命令行窗口】里進行創建用戶!!!,項目或第三方工具才能使用用戶名密碼連接MongoDB指定的數據庫!!!

    使用root權限在指定業務庫,創建用戶過程:

 D:\programs\mongoDB\bin>mongo
 MongoDB shell version v3.4.3
 connecting to: mongodb://127.0.0.1:27017
 MongoDB server version: 3.4.3
 > use admin  #1數據庫切換至admin管理庫
 switched to db admin
 > db.auth('root', 'rootpwd') #2驗證root用戶
 1  
 > use mydb  #3切換至業務庫 在該庫創建訪問該庫的用戶
 >db.createUser(   #4 創建用戶
    {
      user: "mydbDBA",
      pwd: "123321",
      roles: [ {role:"dbOwner", db:"mydb"} ]
    }
 )

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM