mongo命令简单介绍

简介

mongo是一个非关系型数据库,对存储的数据的类型没有很强的要求

简单命令

./mongo
use db_name //切换数据库
db.auth("usernam","passeord")  //认证
show dbs  //查询数据库
show collections  //查询该数据库下所有的集合表

创建用户

1、创建管理员用户
use admin   //切换到admin数据库
db.createUser({
 user: "myUserAdmin",
 pwd: "abc123",
 roles:[{role:"userAdminAnyDatabase",db:"admin"},"readWriteAnyDatabase"]//可以读写任何数据库
})

2、创建普通用户 
//给test数据库创建用户
use test   //切换到test数据库
db.createUser(
  {
    user: "etherc",
    pwd: "etherc",
    roles: [ { role: "readWrite", db: "test" },  //etherc用户可以对test数据库进行读写
             { role: "read", db: "reporting" } ] //etherc用户可以对reporting数据库进行读
  }
)

查询集合

1、查询某数据库下所有的集合
show collections  //查询该数据库下所有的集合表

2、查询test集合下的文档数据
db.test.find()  //查询集合名为test的集合下的所有文档数据
db.test.find().pretty()  //同上,查询集合名为test的集合下的所有文档数据,但更友好展示

创建集合

1、显式创建collection: 
db.createCollection(‘collectionName’) 

2、隐式创建collection(插入数据前创建): 
db.collectionName.insert(document)

删除集合

1、删除test集合
db.test.drop()

2、清空所有,类似truncate
db.user.remove({})

向集合中添加数据

1、向test集合中添加单个文档
db.test.insert({name:"will",age:17})

2、向test集合增加单个文档,并指定_id
db.test.insert({_id:22,name:"will",age:17,gender:"boy",email:"will@itsource.cn"})

3、向test集合中增加多个文档
db.test.insert([
{name:"张三",age:17},
{name:"李四",age:18},
{name:"王五",age:19}
])

更新集合数据

1、只更新test集合第一条记录:
db.test.update( { "count" : { $gt : 1 } } , { $set : { "test2" : "OK"} } );

2、全部更新test集合:
db.test.update( { "count" : { $gt : 3 } } , { $set : { "test2" : "OK"} },false,true );

3、只添加test集合第一条:
db.test.update( { "count" : { $gt : 4 } } , { $set : { "test5" : "OK"} },true,false );

4、全部添加进去:
db.test.update( { "count" : { $gt : 5 } } , { $set : { "test5" : "OK"} },true,true );

元数据

1、系统的命名空间
数据库的信息是存储在集合中。它们使用了系统的命名空间:dbname.system.*
在MongoDB数据库中名字空间 .system.* 是包含多种系统信息的特殊集合(Collection),如下:
集合命名空间 描述
dbname.system.namespaces 列出所有名字空间。
dbname.system.indexes 列出所有索引。
dbname.system.profile 包含数据库概要(profile)信息。
dbname.system.users 列出所有可访问数据库的用户。
dbname.local.sources 包含复制对端(slave)的服务器信息和状态。
对于修改系统集合中的对象有如下限制。
在{{system.indexes}}插入数据,可以创建索引。但除此之外该表信息是不可变的(特殊的drop index命令将自动更新相关信息)。

{{system.users}}是可修改的。 {{system.profile}}是可删除的。

2、MongoDB 数据类型
String 字符串。存储数据常用的数据类型。在 MongoDB 中,UTF-8 编码的字符串才是合法的。
Integer 整型数值。用于存储数值。根据你所采用的服务器,可分为 32 位或 64 位。
Boolean 布尔值。用于存储布尔值(真/假)。
Double 双精度浮点值。用于存储浮点值。
Min/Max keys 将一个值与 BSON(二进制的 JSON)元素的最低值和最高值相对比。
Array 用于将数组或列表或多个值存储为一个键。
Timestamp 时间戳。记录文档修改或添加的具体时间。
Object 用于内嵌文档。
Null 用于创建空值。
Symbol 符号。该数据类型基本上等同于字符串类型,但不同的是,它一般用于采用特殊符号类型的语言。
Date 日期时间。用 UNIX 时间格式来存储当前日期或时间。你可以指定自己的日期时间:创建 Date 对象,传入年月日信息。
Object ID 对象 ID。用于创建文档的 ID。
Binary Data 二进制数据。用于存储二进制数据。
Code 代码类型。用于在文档中存储 JavaScript 代码。
Regular expression 正则表达式类型。用于存储正则表达式。

mongo客户端

可以参考该链接的介绍mongo客户端

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值