• MongoDB数据库 : 管道,用户管理,副本集等


    聚合(aggregate): db.集合.aggregate([{管道:{表达式}}])

    db.集合.aggregate([
    {管道1:{表达式1}},
    {管道2:{表达式2}},
    ... ...
    ])

    管道1的结果作为管道2的输入.

    $group:分组 {$group:{
    _id:'$gender',
    count:{$sum:1}
    }}

    $match:过滤(年龄大于19) {$match:{age:{$gt:19}}}

    $project:投影(和find第二组参数一样,1显示,0不显示) {$project:{_id:0,counter:1}}

    $sort:排序(和sort一样,1升序,-1降序) {$sort:{_id:-1}}

    $skip(跳过多少条文档,和skip一样) {$skip:2}

    $limit(获取多少条文档,和limit一样) {$limit:2}

    $unwind(可以把数组拆分成单条文档) {$unwind:'$xxx'}

    索引(1:升序索引,2:降序索引):db.集合.ensureIndex({属性1:1,属性2:1})

    查看文档索引 db.集合.getIndex()

    删除索引 db.集合.dropIndex('索引名称')

    角色: root 只在admin数据库可用,超级账号
    Read:允许用户读取指定数据库
    readWrite:允许用户读写指定数据库

    创建超级管理员:
    db.createUser({user:'admin',pwd:'123',roles:[{role:'root',db:'admin'}]})

    启用验证 修改/etc/mongodb.conf:

    security:
    authorization: enabled

    或者 auth=true

    用超级管理员创建普通用户:
    db.createUser({user:'user1',pwd:'123',roles:[{role:'readWrite',db:'students'}]})

    登陆: mongo -u user1 -p 123 --authenticationDatabase students

    副本集:数据备份等:
    mongod --bind_ip x.x.x.x --porx 27018 --dbpath ~/Desktop/t1 --replSet rs0
    mongod --bind_ip x.x.x.x --porx 27019 --dbpath ~/Desktop/t2 --replSet rs0

    连接 mongo --host x.x.x.x --port 27018

    初始化主服务器: >rs.initiate() 查看状态 rs.status()

    添加副本集: rs.add('x.x.x.x:27019')')
    删除副本集:rs.remove('x.x.x.x:27019')')

    在从服务器中读取操作需要设置 rs.slaveOk()

    自动主从切换:一个服务器关闭另一个自动切换成主服务器.

    数据库备份:mongodump -u user1 -p 123 --authenticationDatabase 数据库名 -d 备份数据库 -o 存放位置

    数据库恢复: mongorestore -h 服务器地址 -d 需要恢复的数据库 --dir 备份数据库位置

  • 相关阅读:
    ArcGIS Server 10.1 错误 service failed to start,
    ArcGIS AddIN开发异常之--“ValidateAddInXMLTask”任务意外失败
    关于程序批量处理人工做的数据。。。。
    ArcEngine创建要素类_线类型
    ArcEngine创建要素类01
    ArcEngine创建要素集
    其他人博客地址
    ArcEngine创建要素类_面类型
    ArcEngine判断要素集是否存在
    Arcengine 判断Dataset是否存在
  • 原文地址:https://www.cnblogs.com/cccy0/p/9158937.html
Copyright © 2020-2023  润新知