MongoDB常用的操作
前面两篇已经介绍了MongoDB系统架构及其BSON数据类型。本文将讲解基本的MongoDB操作。
一、MongoDB启动命令
systemctl start mongod
systemctl status mongod
systemctl restart mongod
systemctl stop mongod
二、使用init命令操作MongoDB
service mongod start
service mongod status
service mongod restart
service mongod stop
三、启动mongodb客户端
ps -def | grep mongod
cd /data/db/journal/ cat mongodb.log
http://127.0.0.1:28017
进入/usr/mongodb/bin,执行./mongo
四、mongodb数据库操作
use DATABASE_NAME
- 如果数据库不存在,则创建数据库,否则切换到指定数据库
新创建的数据库,用db命令查看时,如果在数据库没有Collection,db会查看不到此数据库。如果你需要用use直接创建成功数据库,需要你插入一个数据。
- 查询数据库
- 查询当前所在的数据库
db
- 查看所有数据库
show dbs /show databases
db.dropDatabase()
删除数据库命令,是删除当前use的数据库。
五、mongodb操作数据集合(Collection)
- 创建集合
- db.createCollection创建集合
语法:
db.createCollection(collectionName,option)
其中,name是集合的名称,option是集合的配置选项。option参数是可选的,可以使用以下参数:
字段 | 类型 | 描述 |
capped | Boolean | 如果为true,则启用封闭的集合,上限是固定大小的集合,在到达最大大小时自动覆盖最旧的条目。如果指定为true。则还需指定size参数 |
autoIndexId | Boolean | 如果为true,则在_id列自动创建索引 |
size | 数字 | 指定上限集合的最大尺寸(以字节为单位),与capped配合使用 |
max | 数字 | 指定上限集合中允许的最大文档数 |
备注:在插入文档时,先检查上限集合capped字段size大小,然后再检查max字段。
- 示例:
#创建一般集合 use mongo_db_dev; db.createCollection('mes_db'); show collections; #创建固定长度集合 use mongo_db_dev; db.createCollection("mycoll2",{capped:true,autoIndexId:true,size:104857600,max:100}) show collections;
- db..insert()创建集合
语法:
db.集合.insert()
示例:
#通过插入数据直接创建集合 use mongo_db_dev; db.insertDbCollection.insert({cnname:'goyeer',enname:'alon',age:36}); show collections;
#isCapped判断是否定长集合 db.insertDbCollection.isCapped();
# 查看所有集合 show collections; #集合重命名 db.insertDbCollection.renameCollection("myColl")
#查看集合 use mongo_db_dev; db.insertDbCollection.deleteMany({});
#删除集合 use mongo_db_dev; db.insertDbCollection.drop()