• MongoDB学习——基础入门


    MongoDB——基础入门

    MongoDB是目前比较流行的一种非关系型数据库(NoSql),他的优势这里不废话,我们关注怎么使用它。

    安装

    1. 下载,首先肯定要去下载,我们去官网下载,在国内,可能没翻墙可能会没办法显示下载的按钮,那样子可以到我的百度网盘去下载我正使用的3.0.6版本

    2. 安装,下载到“mongodb-win32-x86_64-2008plus-ssl-3.0.6-signed.msi”文件后运行,把MongoDB安装到你想要安装的路径,默认是在D:Program FilesMongoDBServer3.0,你可以在安装的时候选择customer的安装方式来选择自己想要安装的路径。

    3. 建立一个存放数据库的文件夹,我选择在MongoDB安装目录下的根目录加入一个名为db的文件夹,路径为:“D:Program FilesMongoDBServer3.0db”,这个没有固定要求。

    4. 启动,打开一个“命令指示符”窗口(可以使用win+R,输入cmd),首先进入MongoDB安装的目录下的bin文件夹里,也可以在环境变量里面加入MongoDB安装的目录下的bin文件夹路径(我就是这样做的),然后用下面的命令来设置数据库路径并启动MongoDB

       mongod --dbpath {数据库路径路径}
      

      比如:

       D:Program FilesMongoDBServer3.0in>mongod --dbpath "D:Program FilesMongoDBServer3.0db"
      

      实际效果图如下:


      拉到最下面可以看到一行提示

       2015-10-09T10:01:52.344+0800 I NETWORK  [initandlisten] waiting for connectionson port 27017
      

      表示MongoDB已经安装成功,并监听者27017端口,端口可以使用mongod命令的时候设置,更多关于mongod参数,可以输入

       mongod -h
      

      来查看

    基本操作

    增删改查实一个数据库必备的操作,接下来我们就说说怎么在shell下进行增删改查。

    我们另外打开一个“命令指示符”窗口(注意:之前的不能关闭),输入mongo打开MongoDB的shell,这个shell就是MongoDB的客户端

    D:Program FilesMongoDBServer3.0in>mongo
    MongoDB shell version: 3.0.6
    connecting to: test
    >
    

    默认连接的数据库是“test”

    1. 增操作

      我们来增加一个名为“Person”的集合(可以理解为数据库表)

       > db.Person.insert({"name":"张三", "age":10})
       WriteResult({ "nInserted" : 1 })
       > db.Person.insert({"name":"李四", "age":20})
       WriteResult({ "nInserted" : 1 })
       >
      
    2. 查操作

      条件查询:

       > db.Person.find({"name":"张三"})
       { "_id" : ObjectId("5617275737a5aa2cafdb4b84"), "name" : "张三", "age" : 10 }
       > 
      

      查询全部:

       > db.Person.find()
       { "_id" : ObjectId("5617277b37a5aa2cafdb4b85"), "name" : "李四", "age" : 20 }
       { "_id" : ObjectId("56172d069d1af21ad1f769c7"), "name" : "张三", "age" : 40 }
       >
      

      注意:大家发现了没有?集合中多了一个“_id”的字段,这个字段是默认加入的GUID,目的是保证数据的唯一性,在关系型数据库的时候,我们都会给表加一个主键,在MongoDB都可以省了自己加主键了。

    3. 更新操作

      update命令有两个参数,第一个是“查找的条件”,第二个是“更新的值”

       > db.Person.update({"name":"张三"}, {"name":"张三","age":40})
       WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })
       > db.Person.find({"name":"张三"})                                          
       { "_id" : ObjectId("56172d069d1af21ad1f769c7"), "name" : "张三", "age" : 40 }
       >
      
    4. 删除操作

       > db.Person.remove({"name":"张三"})
       WriteResult({ "nRemoved" : 1 })
       > db.Person.find()
       { "_id" : ObjectId("5617277b37a5aa2cafdb4b85"), "name" : "李四", "age" : 20 }
       >
      

    将MongoDB安装到window服务里

    1. 创建一个存放数据库日志的文件夹,比如“D:Program FilesMongoDBServer3.0log”

    2. 在根目录下创建一个名为“mongod.cfg”配置文件,内容如下:

       systemLog:
           destination: file
           path: D:Program FilesMongoDBServer3.0logmongod.log
       storage:
           dbPath: D:Program FilesMongoDBServer3.0db
      

      具体的配置参数,请到官网文档:http://docs.mongodb.org/manual/reference/configuration-options/

      注意:配置文件内容不能用“缩进符号”来对齐,在目前我使用的版本3.0.6会无法启动。

    3. 管理员权限打开一个“命令指示符”窗口,使用如下命令

       D:Program FilesMongoDBServer3.0in>mongod --config "D:Program FilesMongoD
       BServer3.0mongod.cfg" --install
       
       D:Program FilesMongoDBServer3.0in>
      

      具体的安装日志,我们打开我们“mongod.cfg”配置文件里设置的日志文件,路径“D:Program FilesMongoDBServer3.0logmongod.log”,内容如下:

       2015-10-09T11:51:47.881+0800 I CONTROL  Trying to install Windows service 'MongoDB'
       2015-10-09T11:51:47.883+0800 I CONTROL  Service 'MongoDB' (MongoDB) installed with command line '"D:Program FilesMongoDBServer3.0inmongod.exe" --config "D:Program FilesMongoDBServer3.0mongod.cfg" --service'
       2015-10-09T11:51:47.883+0800 I CONTROL  Service can be started from the command line with 'net start MongoDB'
      

      吐槽:安装完后,没任何提示,这个用户体验做的不太好

    4. 启动MongoDB服务,启动方式:

      1. 在“命令指示符”窗口输入:

         net start MongoDB
        
      2. 通过window服务管理窗口启动

    至此,打完收工。。。。。。。。。。。。。。。

  • 相关阅读:
    2019年4月
    20190423
    20190419
    20190418
    20190417
    free命令详解(转载)
    https改造过程中的一个坑
    GitLab 实现代码自动部署(转载自https://segmentfault.com/a/1190000011561808)
    js和php写日历
    shell递归遍历目录的方法
  • 原文地址:https://www.cnblogs.com/sheepswallow/p/4863578.html
Copyright © 2020-2023  润新知