zoukankan      html  css  js  c++  java
  • mongodb管理命令

    1.复制集合(collection)
    1)从远端mongodb复制
    # mongo 10.10.10.2:27017/db_test -u "test" -p "test"
    > db.tab1.find();
    > db.tab1.getIndexes();

    # mongo
    > use db_test
    > db.tab1.find();
    > db.tab1.getIndexes();

    > db.runCommand(cloneCollection:"db_test.tab1",from:"10.10.10.2:27017");
    --注:
      1)默认复制集合中的所有数据和索引,并将数据和索引附加于本地集合.
    > db.runCommand(cloneCollection:"db_test.tab1",from:"10.10.10.2:27017",copyIndexes:false);
    --注:
      1)上述命令设置为只复制集合数据,而并不复制集合上的索引.

    > db.tab1.find();
    > db.tab1.getIndexes();

    2)从本地mongodb复制
    # mongo
    > use db_test
    > db.tab1.find().forEach(function(x){db.tab2.insert(x)});

    2.复制数据库(database)
    1)从远端mongodb复制
    # mongo 10.10.10.2:27017/db_test -u "test" -p "test"
    > show dbs;
    > use db_test1
    > show collections;

    # mongo
    > show dbs;

    > db.copyDatabase("db_test1","db_test1","10.10.10.2:27017","test","test");

    2)从本地mongodb复制
    # mongo
    > show dbs;

    > db.copyDatabase("db_test1","db_test2");

    3.刷新磁盘
    --将内存数据与磁盘同步,期间,会阻止写操作,但允许读操作.
    # mongo
    > use admin
    --同步刷新
    > db.runCommand({fsync:1});
    --异步刷新
    > db.runCommand({fsync:1,async:true});

    --备份前刷新并显示锁住库
    > use admin
    > db.runCommand({fsync:1,lock:1});
    > db.cuurentOp();
    --执行数据库备份
    --备份后解锁数据库
    > db.$cmd.sys.unlock.findOne();
    > db.currentOp();

    4.捕获异常
    1)返回异常信息
    # mongo
    > db.getLastError();

    2)确认复制信息
    # mongo
    --确保之前的操作已被复制到包括主库在内的两个成员库上
    # db.runCommand( { getLastError: 1, w: 2, wtimeout:5000 } )

    5.进程监控
    1)查看活动进程
    # mongo
    > db.currentOp();
    > db.$cmd.sys.inprog.findOne();
    --注(输出结果):
      1)opid:操作进程号.
      2)op:操作类型(读写).
      3)ns:操作数据库及集合.
      4)query:查询内容和条件.
      5)inLock:锁类型.-1:读锁;0:无锁;1:写锁.
    2)结束进程
    # mongo
    > db.killOp(shard1:188);
    > db.$cmd.sys.killop.findOne({op:188});

    6.验证集合(collection)
    # mongo
    > use db_test
    > db.tab1.validate();

    --注(输出结果):
      1)ns:校验的数据库和集合名.
      2)result:校验结果的详细信息.
      3)ok:命令执行状态.1:成功.
      4)valid:校验结果,true为集合有效.
      5)lastExtentSize:集合最后一个extent的大小.
     
    7.数据压缩
    # mongo
    > db.tab1.totalSize();
    > db.repairDatabase();
    > db.tab1.totalSize();

  • 相关阅读:
    sql语句游标的写法
    oracle的安装与plsql的环境配置
    oracle中创建表时添加注释
    jsp中Java代码中怎么获取jsp页面元素
    sql模糊查询
    jQuery循环给某个ID赋值
    Codeforces Round #671 (Div. 2)
    TYVJ1935 导弹防御塔
    Educational Codeforces Round 95 (Rated for Div. 2)
    Codeforces Round #670 (Div. 2)
  • 原文地址:https://www.cnblogs.com/lhdz_bj/p/14134693.html
Copyright © 2011-2022 走看看