mongodb:

    Mongodb,分布式文档存储数据库,由C++语言编写,旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSql数据库中比较热门的一种。它在许多场景下可用于替代传统的关系型数据库或键/值存储方式。Mongo使用C++开发。

    MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。

    mongodb的特点:是高性能、易部署、易使用,存储数据非常方便

mongodb下载安装:

    mongodb官网:https://www.mongodb.com

    mongodb的下载网址:https://www.mongodb.com/download-center?jmp=nav#community

    mongodb的中文api:http://www.mongodb.org.cn/manual/

    mongodb的官网api:https://docs.mongodb.com/manual/

    选择window版本下载如下:

      

    下载后双击安装,安装步骤如下:

      1  安装起始页

        

      2 点击next  进入协议层

        

      3.勾选同意,然后next

        

      4.选择custom

        

        

        

      5.点击next 开始安装

        

      6.安装成功 如图

        

        在刚配置的文件夹下如图

        

     至此,mongodb的 安装基本完成-------------------------------------------------


                  MongDB4的安装步骤


  


mongodb发布服务 

   创建文件夹D:\company\mongodb\data\db、D:\company\mongodb\data\log,分别用来安装db和日志文件,即D:\company\mongodb\data\log\mongodb.log  

    

  

   运行cmd.exe进入dos命令界面,执行下列命令

    

    

      发布window服务进任务管理器   mongodb是服务名 

     mongod --dbpath "D:\company\mongodb\data\db" --logpath "D:\company\mongodb\data\log\mongodb.log" --install --serviceName "mongodb"   

       启动服务  net  start  mongodb

      

     任务管理器查看

      

    到这,mongodb安装完毕,启动服务就可以访问mongodb了,访问如下:

      

    验证通过,默认是没有用户名和密码的,后期再介绍


    补充:

      第一种注册服务的方式

       NET start MongoDB   (关闭服务)

       NET stop MongoDB   (关闭服务) 

        mongod --dbpath "D:\company\mongodb\data\db" --logpath "D:\company\mongodb\data\log\mongodb.log" --install --serviceName "mongodb"  (服务注册)

       mongod --dbpath "D:\company\mongodb\data\db" --logpath "D:\company\mongodb\data\log\mongodb.log" --remove --serviceName "mongodb"  (删除服务)

      第二种注册服务方式: 

        在任意文件夹下创建mongodb.cfg的配置文件,我在MOONGODB_HOME/server/3.6/下创建:  【配置文件是YAML语法,要注意】

        

        然后读取配置文件启动:

        mongod.exe --config "D:\company\mongodb\Server\3.6\mongod.cfg" --install --serviceName "mongodb"   注册服务

        net  start mongodb    启动服务

        访问即可:

        mongod.exe  --remove --serviceName "mongodb"   删除服务    mongodb是服务名

        

     mongodb桌面工具

        

        双击安装即可,然后输入ip和端口即可连接


mongodb常用命令  

  

.常用的命令

    show dbs    显示数据库列表
use dbname 进入dbname数据库,大小写敏感,没有这个数据库会自动创建
show collections | show tables 显示数据库中的集合,相当于表格
.创建&新增 db.huhy.save({"name":"yang"}) 创建了名为huhy的集合,并新增了一条{"name":"yang"}的数据
db.huhy.insert({"name":"ghost", "age":}) 在huhy集合中插入一条新数据,,如果没有huhy这个集合,mongodb会自动创建
save()和insert()也存在着些许区别:若新增的数据主键已经存在,insert()会不做操作并提示错误,而save() 则更改原来的内容为新内容。
存在数据:{ _id : , " name " : " n1 "} ,_id是主键
insert({ _id : , " name " : " n2 " }) 会提示错误
save({ _id : , " name " : " n2 " }) 会把 n1 改为 n2 ,有update的作用。
.删除 db.huhy.remove() 删除huhy集合下所有数据
db.huhy.remove({"name": "yang"}) 删除huhy集合下name=yang的数据
db.huhy.drop()或db.runCommand({"drop","huhy"}) 删除集合huhy
db.runCommand({"dropDatabase": }) 删除当前数据库
.查找 db.huhy.find() 查找huhy集合中所有数据
db.huhy.findOne() 查找huhy集合中的第一条数据 .修改
db.huhy.update({"name":"yang"}, {"age":}) 修改name=yang的数据为age=,第一个参数是查找条件,第二个参数是修改内容,除了主键,其他内容会被第二个参数的内容替换,主键不能修改 .条件查找 db.collection.find({ "key" : value }) 查找key=value的数据
db.collection.find({ "key" : { $gt: value } }) key > value
db.collection.find({ "key" : { $lt: value } }) key < value
db.collection.find({ "key" : { $gte: value } }) key >= value
db.collection.find({ "key" : { $lte: value } }) key <= value
db.collection.find({ "key" : { $gt: value1 , $lt: value2 } }) value1 < key <value2
db.collection.find({ "key" : { $ne: value } }) key <> value
db.collection.find({ "key" : { $mod : [ , ] } }) 取模运算,条件相当于key % == 即key除以10余数为1的
db.collection.find({ "key" : { $nin: [ , , ] } }) 不属于,条件相当于key的值不属于[ , , ]中任何一个
db.collection.find({ "key" : { $in: [ , , ] } }) 属于,条件相当于key等于[ , , ]中任何一个
db.collection.find({ "key" : { $size: } }) $size 数量、尺寸,条件相当于key的值的数量是1(key必须是数组,一个值的情况不能算是数量为1的数组)
db.collection.find({ "key" : { $exists : true|false } }) $exists 字段存在,true返回存在字段key的数据,false返回不存在字度key的数据
db.collection.find({ "key": /^val.*val$/i }) 正则,类似like;“i”忽略大小写,“m”支持多行
db.collection.find({ $or : [{a : }, {b : } ] }) $or或 (注意:MongoDB 1.5.3后版本可用),符合条件a=1的或者符合条件b=2的数据都会查询出来
db.collection.find({ "key": value , $or : [{ a : } , { b : }] }) 符合条件key=value ,同时符合其他两个条件中任意一个的数据
db.collection.find({ "key.subkey" :value }) 内嵌对象中的值匹配,注意:"key.subkey"必须加引号
db.collection.find({ "key": { $not : /^val.*val$/i } }) 这是一个与其他查询条件组合使用的操作符,不会单独使用。上述查询条件得到的结果集加上$not之后就能获得相反的集合。
.排序 db.collection.find().sort({ "key1" : - ,"key2" : }) 这里的1代表升序,-1代表降序 .其他 db.collection.find().limit() 控制返回结果数量,如果参数是0,则当作没有约束,limit()将不起作用
db.collection.find().skip() 控制返回结果跳过多少数量,如果参数是0,则当作没有约束,skip()将不起作用,或者说跳过了0条
db.collection.find().skip().limit() 可用来做分页,跳过5条数据再取5条数据
db.collection.find().count(true) count()返回结果集的条数
db.collection.find().skip().limit().count(true) 在加入skip()和limit()这两个操作时,要获得实际返回的结果数,需要一个参数true,否则返回的是符合查询条件的结果总数

Mongodb的入门(1)window安装mongodb的更多相关文章

  1. Mongodb的入门(8)mongodb事物分析

    老生常谈:<在前面博客中也介绍过> mongodb官网:https://docs.mongodb.com/manual/introduction/ mongodb:官网上是这样定义的Mon ...

  2. Failed global initialization:FileNotOpen: Failed to open "C:\MongoDB\data\log\mongo.log" 安装MongoDB时卡死

    在安装MongoDB的时候,下载了3.6版本,安装过程中发现到一半就卡死了,后面换了一个较低版本的才安装成功 这里是所有MongoDB版本的下载地址: https://www.mongodb.org/ ...

  3. MongoDB笔记【1】——安装MongoDB

    SQL - 结构化查询语言 - 关系数据库全都同SQL来操作 1.安装MongoDB - 安装 - 配置环境变量 C:\Program Files\MongoDB\Server\3.2\bin - 在 ...

  4. MongoDB基础之一:Conetos下安装MongoDB

    1.下载自己需要的版本,我这用的是mongodb-linux-x86_64-2.4.9.tgz #cd /usr/local/src # wget http://fastdl.mongodb.org/ ...

  5. MongoDB快速入门学习笔记8 MongoDB的java驱动操作

    import java.util.ArrayList; import java.util.List; import java.util.regex.Pattern; import org.bson.D ...

  6. MongoDB快速入门学习笔记7 MongoDB的用户管理操作

    1.修改启动MongoDB时要求用户验证加参数 --auth 即可.现在我们把MongoDB服务删除,再重新添加服务 mongod --dbpath "D:\work\MongoDB\dat ...

  7. MongoDB快速入门学习笔记6 MongoDB的文档删除操作

    db.集合名称.remove({query}, justOne)query:过滤条件,可选justOne:是否只删除查询到的第一条数据,值为true或者1时,只删除一条数据,默认为false,可选. ...

  8. MongoDB快速入门学习笔记5 MongoDB的文档修改操作

    db.集合名称.update({query},{update},upsert, multi})query:过滤条件update:修改内容upsert:如果不存在查询条件查出的记录,是否插入一条数据,默 ...

  9. MongoDB快速入门学习笔记3 MongoDB的文档插入操作

    1.文档的数据存储格式为BSON,类似于JSON.MongoDB插入数据时会检验数据中是否有“_id”,如果没有会自动生成.shell操作有insert和save两种方法.当插入一条数据有“_id”值 ...

随机推荐

  1. JDK1.10+scala环境的搭建之linux环境(centos6.9)

    ---恢复内容开始--- 第一步:安装jdk1.10版本 进入网页 http://oracle.com/technetwork/java/javase/downloads/index.html  下载 ...

  2. phpstorm之自定义代码碎片(tab键自动填充代码)

    打开phpstorm 的设置界面(快捷键ctrl+alt+s) 比如上面的form表单,需要在生成以后自动跳转到“名称”的位置,然后更改,可以如下修改

  3. mysql 操作符

    1 mysql 操作符 下图表示所有操作符的执行优先级,从高到低,同一行中的操作符优先级相同,相同优先级的情况则从左到右执行 如果想改变优先级执行顺序则可以使用括号() 1.1 对比操作符 对比操作符 ...

  4. 深度学习--RNN,LSTM

    一.RNN 1.定义 递归神经网络(RNN)是两种人工神经网络的总称.一种是时间递归神经网络(recurrent neural network),另一种是结构递归神经网络(recursive neur ...

  5. Leetcode 647. Palindromic Substrings

    Given a string, your task is to count how many palindromic substrings in this string. The substrings ...

  6. funny alphabet

    1.A Boy Can Do Everything For Girl 2. He Is Just Kidding 3. Love Must Need Our Patience

  7. nginx 学习笔记(2) nginx新手入门

    这篇手册简单介绍了nginx,并提供了一些可以操作的简单的工作.前提是nginx已经被安装到你的服务器上.如果没有安装,请阅读上篇:nginx 学习笔记(1) nginx安装.这篇手册主要内容:1. ...

  8. firefox native extension -- har export trigger

    这两天想学习下如何在运行自动化脚本时去capture http traffic,google看到一篇博客介绍用browser mob proxy或者firefox+firebug+netexport, ...

  9. 正则表达式匹配可以更快更简单 (but is slow in Java, Perl, PHP, Python, Ruby, ...)

    source: https://swtch.com/~rsc/regexp/regexp1.html translated by trav, travmymail@gmail.com 引言 下图是两种 ...

  10. HDU 5253 连接的管道(Kruskal算法求解MST)

    题目: 老 Jack 有一片农田,以往几年都是靠天吃饭的.但是今年老天格外的不开眼,大旱.所以老 Jack 决定用管道将他的所有相邻的农田全部都串联起来,这样他就可以从远处引水过来进行灌溉了.当老 J ...