Mac上安装MongoDB后没有默认用户或密码,需要创建用户

默认情况下,MongoDB没有启用访问控制,因此没有默认用户或密码。
要启用访问控制,请使用命令行选项·--authsecurity.authorization配置文件设置。
具体细节请查看官方文档的启用验证章节

以下使我在Mac上测试的具体步骤:

  1. 打开终端,启动MongoDB Daemon

    mongod --port 27017 --dbpath /data/db
    
  2. 在新的终端标签页中进入mongo shell

     mongo --port 27017
    
  3. 创建管理员用户

    use admin
    db.createUser(
      {
        user: "user1",
        pwd: "user1",
        roles: [ { role: "userAdminAnyDatabase", db: "admin" },
        		 { role: "dbAdminAnyDatabase", db: "admin" }, 
                 { role: "readWriteAnyDatabase", db: "admin" }  
               ]
      }
    )
    
  4. 在mongo shell页面输入 quit() 退出

  5. 在mongo daemon页面 按住ctrl-c终止进程

  6. 启用 --auth 选项重新启动mongod

    $ mongod --auth --port 27017 --dbpath /data/db
    2019-02-23T16:18:38.539+0800 I CONTROL  [main] Automatically disabling TLS 1.0, to force-enable TLS 1.0 specify --sslDisabledProtocols 'none'
    ...
    ...
    2019-02-23T16:18:38.553+0800 I CONTROL  [initandlisten] options: { net: { port: 27017 }, security: { authorization: "enabled" }, storage: { dbPath: "/data/db" } }
    
  7. 使用之前创建的用户登入mongo shell

    $ mongo --port 27017 -u "user1" -p "user1" --authenticationDatabase "admin"
    MongoDB shell version v4.0.2
    connecting to: mongodb://127.0.0.1:27017/
    MongoDB server version: 4.0.2
    ...
    
原文地址:https://www.cnblogs.com/lestatzhang/p/10611339.html