程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MongoDB數據庫 >> MongoDB綜合知識 >> MongoDB服務端JavaScript腳本使用方法

MongoDB服務端JavaScript腳本使用方法

編輯:MongoDB綜合知識

常用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” 博客

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved