MongoDB 学习随笔
1. MongoDB 基本概念
mongoDB 为文档型数据库,以 json的格式对数据进行存储,能任意的添加字段,不用像 MySql 需要在数据库添加相应的字段,然后再添加,此为优点之一。
数据格式举例如下:
// 1
{
"_id": NumberInt("1000"), // 默认主键
"username": "1000",
"password": "e9d073770259a837d6d9cce37567249c",
"isAuth": NumberInt("0"),
"status": NumberInt("1"),
"onlinestate": NumberInt("1"),
"settings": { // 可以在字段嵌套另一个 文档(json)
"allowAtt": NumberInt("1"),
"allowGreet": NumberInt("1"),
"isVibration": NumberInt("0"),
},
"num": NumberInt("0"),
"isPasuse": NumberInt("0"),
}
SQL术语/概念 | MongoDB术语/概念 | 解释/说明 |
---|---|---|
database | database | 数据库 |
table | collection | 数据库表/集合 |
row | document | 数据记录行/文档 |
column | field | 数据字段/域 |
index | index | 索引 |
table joins | 表连接,MongoDB不支持 | |
primary key | primary key | 主键,MongoDB自动将_id字段设置为主键 |
2. MongoDB 下载、安装、配置及基本使用
保姆级手把手安装,请参考如下链接,大佬佩服
https://blog.csdn.net/muguli2008/article/details/80591256
2.1 MongoDBCompass 图形化工具的使用
安装:在安装MongoDB 的过程中,勾选,就能一起安装;
连接:(使用的是 无权限验证的 MongoDB)
3、MongoDB 常用命令
MongoDB 调用 js 函数以达到操作数据的操作。
命令 | 解释 |
---|---|
cls | 清空当前命令行 |
show dbs | 查看当前服务器下的数据库 |
use admin | 切换到 admin 数据库 |
db | 查看当前所处的数据库位置 |
show collections | 查看当前数据库下的所有集合(表) |
db.system.users.find().pretty() | 查看 system.version 集合下面的所有文档 .pretty() 数据格式化 |
db.stats() | 查看当前数据库相关信息(名称、文档个数、视图、索引、大小等) |
db.user.insert({“name”:“xiaoming”,“age”:15}) | 如果 user存在就是添加文档, 不存在则创建 集合,并添加文档 |
db.user2.save({“name”:“zhangsan”,“age”:11}) | 功能同上 |
db.dropDatabase() | 删除当前的数据库 |
在MongoDB 中添加超级管理员:
// 切换到 admin 数据库
use admin
// 创建user集合 并添加 超级管理员用户信息
db.createUser({user:"admim",pwd:"123456",roles:["root"]})
// 查看集合
show collections
结果: system.users
system.version
// 查询数据
db.User.find()
// 查询结果
{ "_id" : ObjectId("6054185a3f51ed03f239a037"), "user" : "admin", "pwd" : "123456", "roles" : [ "root" ] }
// 更新数据
db.update({"user":"admin"},{$set:{"pwd":"admin"}})