该栏目讲叙 MongoDB 相关的知识,包括简介、各模块的操作和与 Spring 的整合
简介
1、概述
- :MongoDB 是一个由 C++ 编写的基于分页式文件存储的非关系型数据库
2、下载与安装
下载地址
:https://www.mongodb.com/try/download/community解压安装
:tar -zxvf 包名 -C 解压路径
3、启动与关闭服务
启动服务端
:bin/mongod -f bin/mongodb.conf关闭服务端
:bin/mongod -f bin/mongodb.conf --shutdown客户端连接
:bin/mongo配置文件
# 数据文件存放目录
dbpath = \mongodb-4.4.5\data\db
# 日志文件存放目录
logpath = \mongodb-4.4.5\logs\mongodb.log
# 以追加的方式记录日志
logappend = true
# 端口默认为 27017
port = 27017
# 对访问 IP 地址不做限制,默认为本机地址
bind_ip = 0.0.0.0
# 以守护进程的方式启用,即在后台运行
fork = true
# 开启身份认证
auth = true
安全管理
1、创建管理员
# 显示所有用户
show users
# 切换到admin仓库
use admin
# 创建管理员
db.createUser({
user: "near",
pwd: "123123",
roles: [
{ role: "userAdminAnyDatabase", db: "admin"} # 对admin仓库有使用功能
]
})
db.createUser({user:"near",pwd:"123123",roles:[{role:"userAdminAnyDatabase",db:"admin"}]})
#################################
# 管理员验证
use admin
db.auth("near","123123")
2、创建普通用户
# 切换到管理员
use admin
db.auth("near","123123")
# 创建test数据库
use test
# 为test数据库创建用户
db.createUser({
user: "test",
pwd: "123123",
roles: [
{ role: "readWrite", db: "test" }
]
})
db.createUser({user:"test",pwd:"123123",roles:[{role:"readWrite",db:"test" }]})
# 用户认证
use test
db.auth("test","123123")
3、更新用户
# 切换到管理员
use admin
db.auth("near","123123")
# 更新用户
db.updateUser({
user: "test",
pwd: "123123",
roles: [
{ role: "readWrite", db: "test" }
]
})
db.updateUser({user:"test",pwd:"123123",roles:[{role:"readWrite",db:"test"}]})
# 只更新用户密码
db.changeUserPassword("test","123123")
4、删除用户
# 切换到管理员
use admin
db.auth("near","123123")
# 删除用户(需要切换到该用户所在数据库)
use test
db.dropUser("test")