mongo默认用户名密码

mongo默认用户名密码

mongo默认用户名密码

MongoDB 是一个基于分布式文件存储的数据库,由C++语言编写,支持丰富的查询语言,不仅适用于大型网站数据存储,还可以存储大量的结构化和非结构化数据。在MongoDB中,默认情况下是没有设置用户名和密码的,也就是说可以直接连接到MongoDB实例进行操作,这会带来一些安全风险。

为了提升MongoDB数据库的安全性,我们需要设置用户名和密码来进行认证。本文将详细介绍如何在MongoDB中设置默认的用户名和密码。

设置默认用户名和密码

步骤1:启动MongoDB实例

首先,我们需要启动MongoDB实例。假设我们的MongoDB安装在默认路径下,通过终端或命令行进入MongoDB的安装目录,执行以下命令启动MongoDB实例:

mongod

步骤2:连接MongoDB实例

打开一个新的终端或命令行窗口,执行以下命令连接到MongoDB实例:

mongo

连接成功后,可以看到类似以下的输出:

MongoDB shell version v4.4.3
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("xxxxxxxxx") }
MongoDB server version: 4.4.3

步骤3:设置默认用户名和密码

在连接成功的MongoDB shell中,首先切换到 admin 数据库,然后执行以下命令创建一个新的用户,并分配角色为 root

use admin
db.createUser({
  user: "admin",
  pwd: "admin123",
  roles: [{ role: "root", db: "admin" }]
})

以上命令的含义是在 admin 数据库中创建一个用户名为 admin,密码为 admin123 的用户,并分配 root 角色。创建成功后会得到类似以下输出:

Successfully added user: {
  "user" : "admin",
  "roles" : [
    {
      "role" : "root",
      "db" : "admin"
    }
  ]
}

步骤4:重启MongoDB实例

在设置用户名和密码后,需要重启MongoDB实例才能使修改生效。在终端或命令行中按 Ctrl + C 停止当前运行的 mongod 实例,再次执行以下命令启动 mongod

mongod

步骤5:连接MongoDB实例验证用户名和密码

再次打开一个新的终端或命令行窗口,连接到MongoDB实例时需要使用用户名和密码进行认证:

mongo -u admin -p admin123 --authenticationDatabase admin

连接成功后,可以像在未设置用户名和密码时一样进行操作,不同的是现在已经需要提供用户名和密码。

总结

通过上述步骤,我们成功地在MongoDB中设置了默认的用户名和密码,并且验证了用户名和密码的有效性。这样可以提升MongoDB数据库的安全性,防止未授权的访问和操作。

在实际应用中,为了进一步增强安全性,我们可以创建多个用户,并根据不同用户的角色分配不同的权限,以便灵活地控制用户对数据库的访问和操作。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程