MongoDB服务端JavaScript脚本使用方法

常用JavaScript语句

代码如下:

db.getSiblingDB(<dbname>)  
db.getCollectionNames()   
db.getCollection(<collname>)   
db.printCollectionStats()

在mongo shell运行JavaScript脚本
 
切换数据库:

代码如下:

use <dbname>

运行如下脚本:

var total = 0;
var dbaStatCollections = function(){};

dbaStatCollections = function(){
  collNames = db.getCollectionNames();
  for (var index = 0; index < collNames.length; index++) {
    var coll = db.getCollection(collNames[index]);
    var stats = coll.stats();
    print('ns,count,size,totalIndexSize');
  print(stats.ns + ',' + stats.count + ',' + stats.size + ',' + stats.totalIndexSize);
  }
}

dbaStatCollections();

可将上述脚本保存为dbaStatCollections.js,

在linux shell下运行

代码如下:

mongo localhost:27017/<dbname> dbaStatCollections.js

或在mongo shell下运行

代码如下:

load("dbaStatCollections.js")

在服务端存储JavaScript函数

db.system.js.remove({"_id":"dbaStatCollections"});

db.system.js.save(
{
  _id : "dbaStatCollections" ,
  value : function () {
    collNames = db.getCollectionNames();
    for (var index = 0; index < collNames.length; index++) {
      var coll = db.getCollection(collNames[index]);
      var stats = coll.stats();
      print('ns,count,size,totalIndexSize');
      print(stats.ns + ',' + stats.count + ',' + stats.size + ',' + stats.totalIndexSize);
    }
  }
}
);

db.loadServerScripts();

dbaStatCollections();

在当前JavaScript上下文中,可以使用该函数。退出该会话后,该函数不会被保存。只可在Primary执行。

备注:以上输出结果保存为CSV文件打开。
本文出自 “SQL Server Deep Dives” 博客

(0)

相关推荐

  • 详解Wondows下Node.js使用MongoDB的环境配置

    为了保存网站的用户数据和业务数据,通常需要一个数据库.MongoDB和Node.js特别般配,因为MongoDB是基于文档的非关系型数据库,文档是按BSON(JSON的轻量化二进制格式)存储的,增删改查等管理数据库的命令和JavaScript语法很像.如果你在Node.js里访问MongoDB的数据,会有我们是一家人的感觉,特别亲切. 我也准备使用MongoDB来作为我的数据库. MongoDB使用集合(collection)和文档(document)来描述和存储数据,collection就相当

  • 零基础搭建Node.js、Express、Ejs、Mongodb服务器及应用开发入门

    本文改自非鱼的<[翻译]前端开发人员入门指南,从零开始搭建Node.js, Express, Jade, Mongodb服务器>,之所以把Jade换成Ejs,是因为我觉得ejs更符合WEB编程人员的习惯,更确切说应该是更符合PHP.ASP程序员的使用习惯.好了,废话不多说,直接开始教程. 第1部分 – 15分钟安装 如果你真的是从零开始学,那就花点时间先把环境搭建起来吧.这不难,我用的是Win8,所以这看上去跟那些用Mac和Ubuntu或者其它*nix系统的教程有点区别,不过大致是一样的. 第

  • JavaScript按日期查询MongoDB中的数据的要点示例

    group by date 聚合查询日期 统计每天数据(信息量) 1 { "_id" : ObjectId("557ac1e2153c43c320393d9d"), "msgType" : "text", "sendTime" : ISODate("2015-06-12T11:26:26.000Z") } 2 { "_id" : ObjectId("557a

  • 安装使用Mongoose配合Node.js操作MongoDB的基础教程

    安装mongoose 使用express准备一个TestMongoDB项目,命令序列如下: express TestMongoDB cd TestMongoDB npm install 执行完上面的命令后,使用下面的命令安装mongoose: npm install mongoose --save 这个命令会安装mongoose并将其作为项目的依赖,而mongoose依赖的MongoDB driver以及regexp等等模块也会被自动安装. 实例 使用mongoose可以新建数据库.新建集合.对

  • 了不起的node.js读书笔记之mongodb数据库交互

    这周的学习主要是nodejs的数据库交互上,并使用jade模板一起做了一个用户验证的网站.主要是遇到了一下几个问题. 1.mongodb版本过低 npm ERR! Not compatible with your operating system or architecture: mongodb@0.9.9 0.9.9只支持linux,darwin,freebsd这几个系统,最新版本已支持wins. 2.nodejs进行insert操作后:无法读取结果 复制代码 代码如下: app.post('

  • MongoDB中javascript脚本编程简介和入门实例

    注:作者使用的mongodb版本为2.4.7. 入门例子 复制代码 代码如下: conn = new Mongo();db = conn.getDB("db-name");  //选择数据库db.auth("user-name","password");  //用户验证 var map = function() {    split_result = this.sentence.split(" ");    for (var

  • Node.js和MongoDB实现简单日志分析系统

    在最近的项目中,为了便于分析把项目的日志都存成了JSON格式.之前日志直接存在了文件中,而MongoDB适时闯入了我的视线,于是就把log存进了MongoDB中.log只存起来是没有意义的,最关键的是要从日志中发现业务的趋势.系统的性能漏洞等.之前有一个用Java写的分析模块,运行在Tomcat下.实现相当的重量级,添加一个新指标的流程也比较繁琐,而且由于NFS的原因还导致分析失败.一直想改写,最初想用Ruby On Rails,可是一直没有时间学习和开发(在找借口啊!).在杭州QCon 201

  • node.js操作mongodb学习小结

    一.准备工作 1.在mongodb创建将要读取的表 创建数据库mongotest 复制代码 代码如下: use mongotest; 向user表中插入数据 复制代码 代码如下: db.user.insert({ name:'flyoung', age:'18', sex:true }); 2.安装node-mongodb-native 复制代码 代码如下: npm install mongodb 二.实例(node.js读取mongodb) 参考node-mongodb-native的文档:h

  • CentOS上安装Node.js和mongodb笔记

    之前听说过Node.js,只是知道它可以应用于服务器端,但是对很多具体的东西并不了解.今天在QCon上听了袁锋的分享<Node.js脱离了浏览器的Javascript>之后,顿时有了想立刻试一下的冲动. Node.js的安装步骤算是比较简单,没有太多的弯路,主要参考文档: Building and Installing Node.js 1. 安装Python 根据参考文档说明,从源代码编译安装Node.js需要python2.6或者以上,而通过yum install python.x86_64

  • Node.js的MongoDB驱动Mongoose基本使用教程

    使用mongoose可以让我们更好使用mongodb数据库,而不需要写繁琐的业务逻辑. 安装 npm install mongoose 初始化使用 使用mongoose前,需安装node和mongodb,这里不讲node和mongodb的安装方法. var mongoose = require("mongoose"); var Schema = mongoose.Schema; var db = mongoose.connection; mongoose.connect('mongod

随机推荐