MongoDB v4.2.2 安装与配置及常规操作[Windows]

 1. MongoDB v4.2.2 下载

https://www.mongodb.com/download-center/community

2. MongoDB v4.2.2 安装 

测试是否安装成功:http://localhost:27017/

 3. MongoDB v4.2.2 环境变量配置

测试是否设置成功:

 3. MongoDB v4.2.2 用户配置 

3.1 添加用户

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

 运行结果

C:\Users\Gejianping>mongo
MongoDB shell version v4.2.2
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("506d85d5-0e74-400d-acb8-50b3bd6595e2") }
MongoDB server version: 4.2.2
Server has startup warnings:
2019-12-16T11:53:59.741+0800 I  CONTROL  [initandlisten]
2019-12-16T11:53:59.741+0800 I  CONTROL  [initandlisten] ** WARNING: Access control is not enabled for the database.
2019-12-16T11:53:59.741+0800 I  CONTROL  [initandlisten] **          Read and write access to data and configuration is unrestricted.
2019-12-16T11:53:59.741+0800 I  CONTROL  [initandlisten]
---
Enable MongoDB's free cloud-based monitoring service, which will then receive and display
metrics about your deployment (disk utilization, CPU, operation statistics, etc).

The monitoring data will be available on a MongoDB website with a unique URL accessible to you
and anyone you share the URL with. MongoDB may use this information to make product
improvements and to suggest MongoDB products and deployment options to you.

To enable free monitoring, run the following command: db.enableFreeMonitoring()
To permanently disable this reminder, run the following command: db.disableFreeMonitoring()
---

> use admin
switched to db admin
> db.createUser({ user:'admin', pwd:'admin', roles:[{role:'root',db:'admin'}] })
Successfully added user: {
        "user" : "admin",
        "roles" : [
                {
                        "role" : "root",
                        "db" : "admin"
                }
        ]
}
>

3.2 修改配置文件 D:\Program Files\MongoDB\Server\4.2\bin\mongod.cfg添加以下字段

security:
  authorization: enabled
# 重启 MongoDB 服务
Microsoft Windows [版本 10.0.17763.914]
(c) 2018 Microsoft Corporation。保留所有权利。

C:\Windows\system32>net stop MongoDB

MongoDB Server 服务已成功停止。


C:\Windows\system32>net start MongoDB
MongoDB Server 服务正在启动 .
MongoDB Server 服务已经启动成功。


C:\Windows\system32>

3.3 验证是否开启了安全验证

4. MongoDB 常用命令

4.1 账户权限配置中常用的命令

show users; # 查看当前库下的用户
db.dropUser(“username”) # 删除用户username
db.updateUser( “admin”,{pwd:“password”}); # 修改用户密码
db.auth(“admin”,“password”); # 密码认证
use admin; db.updateUser("test",{roles:[{role:"readWriteAnyDatabase",db:"admin"}]})#使用 admin 账号(其为超级用户角色), 将 用户test的权限改为 readWriteAnyDatabase
show collections; # 查看有哪些表
use DATABASE_NAME; # 如果数据库不存在,则创建数据库,否则切换到指定数据库
use testdb; db.dropDatabase(); # 删除数据库()
db.createCollection(name, options) # 创建集合 name: 新创建的集合名称 options: 创建参数
db.pineapple.drop() # 删除pineapple集合
db.pineapple.insert({"name":"AMD_Yes","desc":"AMD是最好的CPU"})
# 向pineapple集合中插入 文档 {"name":"AMD_Yes","desc":"AMD是最好的CPU"},MongoDB会自动生成主键值,其中主键类型为ObjectId(对象类型)
db.pineapple.update({"name":"AMD_Yes"},{"name":"AMD_Yes","desc":"人生我的卡路里"})
# 将 pineapple 集合中 符合条件 {"name":"AMD_Yes"} 的第一个文档 替换为 {"name":"AMD_Yes","desc":"人生我的卡路里"}
db.pineapple.remove({}) # 将 pineapple 集合中 所有文档移除
db.pineapple.remove({"name":"AMD_Yes"}) # 将 pineapple 集合中 满足条件 {"name":"AMD_Yes"} 的文档移除
db.pineapple.find() # 查询 pineapple 集合中所有的文档
db.pineapple.find({"name":"AMD_Yes"}) # 查询 pineapple 集合中 满足 {"name":"AMD_Yes"} 的 所有文档
db.pineapple.find({"name":"AMD_Yes"},{name:1,desc:1,_id:0})
# 在集合 pineapple 中,查询所有满足条件 {"name":"AMD_Yes"} 的条件,只显示 name 和 desc,而不显示 _id

db.createUser({user:'admin',pwd:'admin', roles:[{role:'root',db:'admin'}] })#创建超级用户角色 为 root 的 admin 用户,密码为 admin

4.2 MongoDB 数据库角色

1.数据库用户角色:read、readWrite;
2.数据库管理角色:dbAdmin、dbOwner、userAdmin;
3.集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager;
4.备份恢复角色:backup、restore;
5.所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、 dbAdminAnyDatabase
6.超级用户角色:root

4.3 给 config 数据库创建一个用户 只能访问 config 不能访问其他数据库

use config
db.createUser({ 
    user:'configadmin', 
    pwd:'123456', 
    roles:[{role:'dbOwner',db:'config'}] 
})

4.4 SpringBoot 连接 MongoDB

spring:    
   mongodb:
      uri: mongodb://name:password@localhost:27017/test

  • 6
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值