mongodb安装配置及基本操作

mongodb的优势:

1.易扩展:

NoSQL数据库种类繁多,但是一个共同的特点就是去掉关系数据库的关系型特性。数据库之间无关系,

这样就非常容易扩展。

2.大数据量,高性能:

NoSQL数据库都具有非常高的读写性能,尤其是在大数据量下,同样表现·优秀。这得益于它的无关系性,数

据库的结构简单。

3.灵活的数据模型,高可用:

NoSQL无需事先为要存储的数据建立字段,随时可以存储自定义的数据格式。而在关系数据库里,增删字段

是一件非常麻烦的事,尤其是在一个非常大数据量的表中增加字段


 

mongodb安装:sudo apt-get install mongodb

mongodb启动:sudo service mongodb start

mongodb停止:sudo service mongodb stop

 

常用操作:

1.查看所有的数据库:show databases

2.查看当前的数据库:db

3.切换数据库: use 数据库名

4.删除当前数据库:db.dropDatabase()

5.创建数据库: use 数据库名(数据库没有时自动创建)

注释:通过使用“use new-databasename”的语法去使用一个新的数据库,注意,即使你的数据库还没建立起来,依然可以这样使用,mongodb在真正插入了数据后,才会真正建立起来

 

mongodb中没有表这个概念,mongodb中的集合就相当于mysql中的表

集合常用操作:

1.不手动创建集合:向不存在的集合中第一次加入数据时,集合会被创建出来

2.手动创建集合:

db.createCollection(名字,参数)

例如:

db.createCollection("sub",{ capped:true,size:10})

参数capped:默认为false表示不设置上限,值为true时表示设置上限

参数size:当capped值为true时,需要指定此参数,表示上限大小,当文档达到上限时,

会将之前的数据覆盖,单位为字节。

3.查看集合:

show collections

4.删除集合:

db.集合名称.drop()

 

mongodb能存储的数据类型:

1.Object ID:文档ID

2.String:字符串,必须是有效的UTF-8

3.Boolean:布尔值,true或false

4.Integer:整数

5.Double:浮点值

6.Arrays:数组或列表,多个值存储到一个键

7.Object:用于嵌入式的文档,即一个值为一个文档

8.Null:存储Null值

9.Timestamp:时间戳,表示从1970-1-1到现在的总秒数

10.Date:存储当前日期或时间的UNIX时间格式

 

创建日期语句如下:参数的格式为YYYY-MM-DD

new Date('YYYY-MM-DD')

每个文档都有一个属性,为_id,保证每个文档的唯一性

可以自己设置_id插入文档,如果没有提供,那么mongodb为每个文档提供了一个独特的_id,

类型为objectID

objectID是一个12字节的十六进制数:

前4个字节为当前时间戳

接下来3个字节为机器ID

接下来的2个字节中mongodb的服务进程id

最后3个字节是简单的增量值

 

1.插入数据:

db.集合名称.insert({document})

例如:

db.stu.insert({name:'jack',gender:'man'})

插入文档时,如果不指定_id参数,Mongodb会为文档分配一个唯一的Objectid

2.保存:

db.集合名称.save(document)

如果文档的_id已经存在则修改,如果文档的_id不存在则添加

3.简单查询:

db.集合名称.find()

4.更新:
db.集合名称.update(<query>,<update>,{multi:<boolean>})(multi只有和$操作符在一起出现才有效)

注释:存在问题

例如:db.test.insert({name:'jack',age:30})

db.集合名称.update({name:"jack"},{name:"xiaoli"})

更新之后find发现变为

name:"xiaoli",但age属性不见了

所以更新后加$例如:

db.test.update({name:"xiaowang"}{$set:{name:"xiaozhang"}}

参数query:查询条件

参数update:更新操作符

参数multi:可选,默认是false,表示只更新找到的第一条记录,值为true表示把满足条件的文档全部更新。

5.删除

db.集合名称.remove(<query>,{justOne:<boolean>})

参数query可选:删除的文档的条件

参数justOne可选:如果设为true或1,则只删除一条,默认false,表示删除多条

 

 

 

 

 

 

 

 

 

 

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值