• MongoDB






    知识点


    要存入MongoDB 的数据模型的属性的类型是枚举类型 , 会变成枚举类的类名 , 字符串类型
    例如 :
    模型类叫  News
     

     


     


    常用操作


    根据 数组的大小 查询文档
    想要找这样的文档, 它的这种属性的类型是数组 , 数组里面至少有3个元素
    例如 :
    查找 属性 -- userIds 数组的大小是7的文档
    方法1 :
    {  "userIds" : { $size:7 }  }

    方法2 :
    判断数组中的第7个元素是否存在
    {  "userIds.7" : { $exists:1 }  }
    7表示第7个元素 , 1表示存在( 0表示不存在 )

    其他方法 参考文章
    http://www.jb51.net/article/49391.htm


    环境搭建

    参考 http://www.runoob.com/mongodb/mongodb-window-install.html , 下面是具体操作

    安装


    官网

    https://www.mongodb.com

    社区版 DB下载
    https://www.mongodb.com/download-center#community

    2017-12-10 最新的下载链接 mongodb-win32-x86_64-2008plus-ssl-3.6.0-signed
    https://www.mongodb.com/dr/fastdl.mongodb.org/win32/mongodb-win32-x86_64-2008plus-ssl-3.6.0-signed.msi/download

    安装时候只能安装在默认路径 , 没得选 , 在C盘
    C:Program FilesMongoDBServer3.4in

    创建相关的文件夹 , 用来放 数据库的数据 和 log

     

    日志,红色的文件是自动生成的
    d:MongoDatadbConfmongodb.log

    数据库文件
    d:MongoDatadb

    要弄到环境变量里 , 不配置也行, 下面的命令要加上前缀
    C:Program FilesMongoDBServer3.4in

    不然
    'mongod.exe' 不是内部或外部命令,也不是可运行的程序
    或批处理文件。


    被数据库配置成服务 , 像MySQL一样开机自启,要用管理员权限运行cmd

    mongod.exe --bind_ip 127.0.0.1 --logpath "d:MongoDatadbConfmongodb.log" --logappend --dbpath "d:MongoDatadb" --port 27017 --serviceName "MongoDB" --serviceDisplayName "MongoDB" --install

    网上的原来的命令行
    mongod.exe --bind_ip yourIPadress --logpath "C:datadbConfmongodb.log" --logappend --dbpath "C:datadb" --port yourPortNumber --serviceName "YourServiceName" --serviceDisplayName "YourServiceName" --install


    有空的话确认下服务是否配置好了 , 要是自动的

    如果没看到 , 则是因为运行上面命令的时候不是用管理员权限 . 重复执行一次 , 不用删除东西

    可以再手动改成 自动(延迟) , 使开机后的一瞬间不那么卡



    此时服务还没有启动 , 要开机后才自动启动 , 现在要开的话鼠标右键 , 开启


    有空的话确认下db 文件夹里是否有自动生成的东西


    开启数据库服务

    可以写在bat批处理文件里 , 如果不通过"开机自启服务"的话 , 可以用这种方式一键启动服务

    mongod.exe --dbpath d:MongoDatadb

    成功


    用MongoDB chef 连接成功
    左上角的连接名随便写 , 但别写中文 ( 展示的时候会乱码 )








     以前的配置笔记
    {
    mongod --dbpath D:mongodbdata --logpath=D:mongodblogmongodb.log  

    路径中不能有空格,新建用来放数据库文件和日志的文件夹

    mongod --dbpath D:MongodbFiledata --logpath=D:MongodbFilelogmongodb.log



    mongod --dbpath D:MongoDBData --logpath=D:MongoDBlogmongodb.log  
    }

    使用 , 工具

    用 MongoChef 这个管理软件,开源且免费,有商业版。可自动化生成查询语句

     

    最下面的 _id 是自动生成的,手动指定
    { 
        "name" : "xiaoCong", 
        "age" : 18.0, 
        "_id" : ObjectId("58e4b2d54825119b402bde7e")
    }


    优点

    数据库本身就是面向对象的,所以不需要ORM,不用映射


    缺点,少用

    似乎不支持复杂的查询,比如 条件查询,个数不确定的参数

    操作DB的工具太少
    工具不好用,除非是收费的
    可用 js 操作,但类型,是动态的
    不需要var先声明一个变量,所以不知道这个变量之前有没有被人操作过
    市场小,需求少,我在2016.10.4为止没看到福州哪家公司用这个数据库



    Not only SQL
    MongoDB 在3.0 用Go 语言重写了所有的工具集

    MongoDB 3.2版本

    环境变量,默认安装在C:Program FilesMongoDBServer 下,后面跟着版本
    MongoDB
    C:Program FilesMongoDBServer3.2in

    在 创建一些文件夹,放DB文件,E:MongoDBdatadb 

    用mongod启动服务  cmd控制台
    mongod --dbpath E:MongoDBdatadb

    确认服务是否开启:
    用浏览器打开
    显示It looks like you are trying to access MongoDB over HTTP on the native driver port.

    操作mongo
    mongo
    MongoDB shell version: 3.2.9
    connecting to: test
    Welcome to the MongoDB shell.
    For interactive help, type "help".
    For more comprehensive documentation, see
            http://docs.mongodb.org/
    Questions? Try the support group
            http://groups.google.com/group/mongodb-user
    >

    打开官方shell
    mongo

    第三方GUI管理工具,明显比shell命令行好用,尤其是做高级操作的时候

    用这个  MongoChef  开源且免费,有商业版
     
    NoSQL Manager for MongoDB


    name
    {name:"xiaoCong" }
    {name:'xiaoCong' }
    name:"xiaoCong"
    name:'xiaoCong'


    RockMongo



    不兼容win10吗

    MongoVUE     Gui tools for MongoDB
    http://www.mongovue.com/
    我选择安装在D:Program Files (x86)MongoVUEMongoVUE 1.6.9

    然后破解之:
    替换掉安装目录下的 MongoVUE.exe文件 即可破解

    connectNane
    myDB
    最后一个留空,表示连接到所有数据库,也可以像这样指定连接到某个数据库
     
     

    db.test.insert( {
        user_id: "abc123",
        age: 55,
        status: "A"
    } )
    However






  • 相关阅读:
    《实例化需求》
    《编写有效用例》
    Alpha版总结会议
    团队开发冲刺第二阶段11
    团队开发冲刺第二阶段10
    团队开发冲刺第二阶段9
    团队开发冲刺第二阶段8
    团队开发冲刺第二阶段7
    团队开发冲刺第二阶段6
    团队开发冲刺第二阶段5
  • 原文地址:https://www.cnblogs.com/xiaoCong2016/p/6669592.html
Copyright © 2020-2023  润新知