mongodb常用基本操作

0、 mongodb 默认存在的库

test库: 登录时默认存在的库
admin库: 系统预留库,mongodb系统管理库
local库: 本地预留库,存储关键日志

1 、命令种类
数据库对象(库(database),表(collection),数据行(document))

db.命令:

DB级别命令

db.[TAB] 类似于linux中的tab功能
db.help() db级别的命令使用帮助

collection级别操作
db.Collection_name.xxx

document级别操作:
db.t1.insert()

复制集有关(replication set):
rs.

分片集群(sharding cluster)
sh.

2、帮助
help
KEYWORDS.help()
KEYWORDS.[TAB]

show
show databases
show dbs
show tables
show collections
use
db

db.help()
db.a.help()
rs.help()
sh.help()

3 、常用操作

--查看当前db版本
test> db.version()

--显示当前数据库

test> db
test

db.getName()
test

--查询所有数据库
test> show dbs

– 切换数据库

use local
switched to db local

  • 查看所有的collection
    show tables;

– 显示当前数据库状态
test> use local
switched to db local

local> db.stats()

– 查看当前数据库的连接机器地址

db.getMongo()
connection to 127.0.0.1

指定数据库进行连接
默认连接本机test数据库


4、mongodb对象操作:

mongo mysql
库 -----> 库
集合 -----> 表
文档 -----> 数据行

4.1 库的操作:

– 创建数据库:
当use的时候,系统就会自动创建一个数据库。
如果use之后没有创建任何集合。
系统就会删除这个数据库。

– 删除数据库
如果没有选择任何数据库,会删除默认的test数据库
//删除test数据库

test> show dbs
local 0.000GB
test 0.000GB

test> use test
switched to db test
test> db.dropDatabase()
{ "dropped" : "test", "ok" : 1 }

4.2 集合及文档操作:
创建集合
admin> use app
switched to db app
app> db.createCollection('a')
{ "ok" : 1 }
app> db.createCollection('b')
{ "ok" : 1 }

show collections //查看当前数据下的所有集合
a b 或
db.getCollectionNames()
[ "a", "b" ]

注:当插入一个文档的时候,一个集合就会自动创建。

use oldboy
db.test.insert({name:"zhangsan"})
db.stu.insert({id:101,name:"zhangsan",age:20,gender:"m"})
show tables;
db.stu.insert({id:102,name:"lisi"})
db.stu.insert({a:"b",c:"d"})
db.stu.insert({a:1,c:2})

查询数据:

db.stu.find({}).pretty()
db.stu.find({id:101}).pretty();
{
"_id" : ObjectId("5b470168cfdebc16a5a82a97"),
"id" : 101,
"name" : "zhangsan",
"age" : 20,
"gender" : "m"
}

删除集合
app> use app
switched to db app

app> db.log.drop() //删除集合

– 重命名集合
//把log改名为log1
app> db.log.renameCollection("log1")
{ "ok" : 1 }
app> show collections
a b c
log1
app

批量插入数据
for(i=0;i<10000;i++){db.log.insert({"uid":i,"name":"mongodb","age":6,"date":new
Date()})}

Mongodb数据查询语句:

– 查询集合中的记录数
app> db.log.find() //查询所有记录

注:默认每页显示20条记录,当显示不下的的情况下,可以用it迭代命令查询下一页数据。
设置每页显示数据的大小:

DBQuery.shellBatchSize=50; //每页显示50条记录

app> db.log.find().pretty() //查询所有记录,并格式化输出
app> db.log.findOne() //查看第1条记录
app> db.log.count() //查询总的记录数

– 删除集合中的记录数
app> db.log.remove({}) //删除集合中所有记录

– 查看集合存储信息
app> db.log.stats()
app> db.log.totalSize() //集合中索引+数据压缩存储之后的大小
app> db.log.storageSize() //集合中数据压缩存储的大小

转载于:https://blog.51cto.com/12083623/2353137

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值