• MongoDB的安装和基本操作


    .使用前的准备(windows下的安装) 

    1.下载

    目前MongoDB的官网不知道问什么不能进行下载了,但是可以在MongoDB中文论坛进行下载,

    地址如下:http://www.mongoing.com/mongodb-downloads 

    2.安装

    我下载的是msi版本的软件,安装过程中选择自定义方式,可以改变安装的位置,我的安装路径如下:

    安装完成后会出现如下的文件

    3.启动MongoDB

    打开cmd,进入安装好的MongoDBbin目录执行如下命令:

    下面的--dbpath 后的参数就是存放数据的文件夹

     

    4.还可以MongoDB安装成windows服务,可以参考园子里面一个大神的做法:http://www.cnblogs.com/lzrabbit/p/3682510.html

    有点不同的是我看了大神的文章:因为我是第一次安装,所以直接写了下面的命令就安装好了

    D:MongoDBin>mongod.exe --dbpath D:MongoDBData --logpath=D:MongoDBLogmongod

    b.log --logappend --install

    然后就可以在管理工具中的服务中查看我们安装的MongoDB服务了

    5.启动数据库服务的配置文件

     Mongodbwindows下通过配置文件配置和访问

     Mongodb动命令mongod参数说明

    6.通过cmd启动mongodb的客户端

    启动客户端就可以操作数据库了,下面就是一些基本的操作。

     

    .使用Mongodb

    ①创建一个数据库

    use[数据库的名字]

    这个时候如果什么都不做,直接退出的话,这个新创建的数据库就会被删除

     

    ②给数据库添加一个集合,并在集合当中添加一条记录

    Db.[文件名].insert({...})

    > db.Student.Insert({name:"Stu1",age:"15"}) 

    ③查看所有的数据库

    Show dbs

    > show dbs
    
    admin        (empty)
    local        0.078GB
    mongoDBTest  0.078GB
    

    ④查看数据库中的所有文档

    Show collections

    > show collections
    Student
    system.indexes
    

      

    ⑤查看指定文档的数据

    查询所有的数据: db.[文件名].find()

    查询第一条数据: db.[文件名].findOne()

    > db.Student.find()
    { "_id" : ObjectId("56d4ffa1dac7a0ad749f16bf"), "name" : "Stu1", "age" : "15" }
    { "_id" : ObjectId("56d503c7dac7a0ad749f16c0"), "name" : "Stu2", "age" : "18" }
    > db.Student.findOne()
    {
            "_id" : ObjectId("56d4ffa1dac7a0ad749f16bf"),
            "name" : "Stu1",
            "age" : "15"
    }
    >
    

    ⑥更新文档数据(两种方式) 

    1)全更新掉,就是把原来的数据进行覆盖

    方法:

    db.[文件名].update({查询条件},{更新内容})

    例:

    1.先查看一下文件中的记录,这里有两条

    2.创建一个变量,将第一条记录赋给它

    3.进行数据更新

    4.更新后查看变量和更新后的记录

    5.结果,被覆盖了,原来那条数据不见了

    2)使用set修改器

    db.[文件名].update({查询条件},{$set:{更新内容}})

    例如我修改上面那个 Name=Stu1 age=15 的骚年,把他的年纪改成20

    > db.Student.update({name:"Stu1"},{$set:{age:"20"}})
    
    WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
    
    > db.Student.findOne()
    
    {
    
            "_id" : ObjectId("56d4ffa1dac7a0ad749f16bf"),
    
            "name" : "Stu1",
    
            "age" : "20"
    
    }
    
    > 

    sql语句当中的

    update 表名 set age=20 where Name="Stu1" 差不多

    ⑦删除文档中的数据

    db.[文件名].remove({…...})

    > db.Student.remove({job:"Student"})
    WriteResult({ "nRemoved" : 1 })
    > var s = db.Student.find()
    > s
    { "_id" : ObjectId("56d503c7dac7a0ad749f16c0"), "name" : "Stu2", "age" : "18" }
    > 

    ⑧删除数据库的文件

    db.[文件名].drop()

    ⑨删除数据库

    db.dropDatabase()

    补充:

    查看mongodb的方法

    db.help()使用这个函数可以查看

    数据集合命名规范注意点:

    可以给集合起名为 db-test 但是这样的名字,使用db.[文件名]就会出错

    要使用db.getCollectio("文件名")才可以

    例子:

    > db.db-test.insert({name:"123"})
    2016-03-01T11:41:30.032+0800 ReferenceError: test is not defined
    > db.getCollection("db-test").insert({name:"123"})
    WriteResult({ "nInserted" : 1 })
    

      

    mongoDBshell自带javascript引擎,所以可以在shell中编写javascript函数

    例子:

    > function insert(object){ db.getCollection("Student").insert(object); }
    
    > insert({name:"xxxxx"})
    
    > db.getCollection("Student").find()
    
    { "_id" : ObjectId("56d503c7dac7a0ad749f16c0"), "name" : "Stu2", "age" : "18" }
    
    { "_id" : ObjectId("56d51208dac7a0ad749f16c2"), "name" : "xxxxx" }
    
    >

     

    三、总结

    刚刚学习了Mongodb的基本操作,其中有些东西要学习一下

    1.我们看到我们创建一个集合的时候,Mongodb会自动生成一个system.Indexs的集合

    2.每一条记录当中,都会自动生成一个key/value,_idobjectId

    3.每次我插入数据,使用了类似JSON的东西,那个叫做BSON,可以理解是对JSON的扩展

  • 相关阅读:
    学习 swift (1)
    Sbulime Text 2 修改选中字符串的颜色
    js string 和 json 互转
    Mac OSX sublime text2 各种快捷键
    webstorm keymap
    python http post json
    node.js async 几个函数
    python 爬图 helloworld
    合服导致 globalserver 起不来的问题
    ssh 登陆 端口转发
  • 原文地址:https://www.cnblogs.com/dcz2015/p/5230635.html
Copyright © 2020-2023  润新知