1 问题:
新安装的windows10 的mongodb的5.0版本的服务,使用命令报错:{"ok": 0.0, "errmsg": "command create requires authentication", "code": 13, "codeName": "Unauthorized}。
解决:去安装目录bin文件下的mongod.cfg文件注释掉下面配置,保存后重启服务即可。
#security:
# authorization: enabled
2 在bin目录下打开cmd,执行下面命令,创建一个超级管理员
启用命令命令:mongo
使用数据库命令:use admin
创建超级管理员命令:db.createUser({"user":"root","pwd":"root","roles":[{role:"root",db:"admin"}]})
使用超级管理员命令:db.auth('root','root') 。
3 返回去掉注释配置文件的,并重启服务
security:
authorization: enabled
4 创建一个数据库,需要插入一条数据才能看到这个服务
5 为这个数据库添加数据管理员使用下面命令
use qsk_sign_in
db.createUser({user:"qsk", pwd:"qsk", roles:[{role:"readWrite",db:"qsk_sign_in"},] })
6 在admin数据库下添加数据库用户(一个用户管理多个数据库)
db.createUser({user:"qsk",pwd:"qsk",roles:[{role:"readWrite",db:"qsk_sign_in"},{role:"readWrite",db:"qsk_file"},{role:"readWrite",db:"qsk_log"},{role:"readWrite",db:"qsk_sms"},]})
7用Studio 3T 查看用户
8 参考理解mongodb的角色权限的文档MongoDB:数据库角色权限_dbadmin权限_尔玉先生的博客-优快云博客
9 业务场景:
9.1应对三高(高并发、高数量、高扩展)
9.2 具体场景:社交场景(高数量)、游戏场景(高效率存储和访问)、物流场景(路线更新上报点位)(高效率存储和访问)、物联网场景(日志)(高效率存储和访问)、直播视频(点赞互动)(高效率存储和访问)
9.3 总结:a、 数据量大、读写频繁,事务性要求底。 b、2000-3000以上的QPD或者TB/PB级别存储数据。
10 体系结构:集合【collection】、文档【document】、字段【field】。
11 字段类型: 对象id、字段串、布尔、数组、浮点数、null、undefined、正则表达式、代码。