本文主要是介绍Skr-Eric的MongoDB课堂(二)——MongoDB的数据库与集合命令,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Mongodb 命令
设置数据库存储位置
mongod --dbpath 目录
e.g. 将存储路径设置为dbs
mongod --dbpath dbs
设置数据库监听端口
mongod --port 8080
* 默认监听端口27017
mongo
进入数据库交互操作界面
mongo shell : 用来操作mongodb数据库的界面,在这里可以使用mongo语句操作数据库内容
退出mongo shell:quit() exit ctrl-c
组织结构 : 键值对 --》 文档 --》集合 --》 数据库
---------------------------------
ID | NAME | AGE
---------------------------------
1 | Lily | 17
---------------------------------
2 | Lucy | 18
---------------------------------
{
"ID":1,
"NAME":'Lily',
"AGE":17
},
{
"ID":2,
"NAME":'Lucy',
"AGE":18
}
mysql 和 mongodb 概念对比
mysql mongodb 含义
database database 数据库
table collection 表/集合
column field 字段/域
row document 记录/文档
index index 索引
三个表
1. 用户信息 1
2. 朋友圈内容 多 多
3. 其他用户点赞,评论 多
{id:xxx,name:'zhan',age:12,pyq:[{date:xxx,conten:xxx,image:[1,2,3],zan:[id1,id2],pl:[{date:xxx,con:xxx},{},{}]},{},{}]}
创建数据库
use databaseName
e.g. 创建一个名字为stu的数据库
use stu
* use实际为选择使用哪个数据库,当数据库不存在时会自动创建
* use 后并不会立即创建出数据库,而是需要等到插入数据时数据库才会创建
查看系统中的数据库
show dbs
系统数据库说明
admin : 存储用户信息
local : 存储本地数据
config : 存储分片信息
数据库命名规则
1. 使用utf-8字符 (mongo默认支持utf-8)
2. 不能含有空格 . / \ '\0' 字符
3. 长度不超过64字节
4. 不能和系统数据库重名
db : mongodb的全局量,代表当前正在使用的数据库
* 如果不选择使用任何数据库db代表test,直接插入数据就会建立test数据库
数据库的备份和恢复
备份 mongodump -h host -d dbname -o bak
e.g. 将本机test数据库备份到bak目录下
mongodump -h 127.0.0.1 -d test -o bak
恢复 mongorestore -h dbhost:port -d dbname path
e.g. 将test数据库恢复到本机的res数据库中(res不存在自动创建)
mongorestore -h 127.0.0.1:27017 -d res bak/test
数据库的监测
mongostat 监测数据库运行数据
insert query update delete : 每秒增查改删的次数
flushes 每秒和磁盘交互次数
vsize 虚拟内存
res 物理内存
time 时间
mongotop 监控数据库读写时长
ns 数据表
total 总时间
read 读时间
write 写时间
删除数据库
db.dropDatabase()
删除db所代表的数据库
创建集合
方法1
db.createCollection(collection_name)
e.g. 创建class1集合
db.createCollection('class1')
方法2
当向一个集合中插入数据的时候如果集合不存在则自动创建
db.collection_name.insert(...)
查看数据库中集合
show collections
show tables
集合命名规则
1.合法的UTF-8字符
2.不能有‘\0’
3.不能以system.开头,因为这是系统保留集合前缀
4.不能和关键字重名
删除集合
db.collection.drop()
e.g. 删除class2集合
db.class2.drop()
集合的重命名
db.collection.renameCollection("new_name")
e.g. 将class集合重命名为 class0
db.class.renameCollection("class0")
想要看更多的课程请微信关注SkrEric的编程课堂
这篇关于Skr-Eric的MongoDB课堂(二)——MongoDB的数据库与集合命令的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!