2016-05-10 91 views
0

我的MongoDB中有100多個數據庫。
每當我使用show dbs命令我的屏幕充滿了所有的數據庫名稱,它很難找到一個特定的數據庫。
如何僅顯示包含特定子字符串的數據庫,因爲我們可以在MySQL中查詢以顯示特定數據庫(顯示數據庫如'%SUBSTR%')查詢。MongoDB:像MySQL一樣顯示數據庫

回答

1

另一種選擇是:

> db.getMongo().getDBNames().forEach(
    function(databaseName) { 
     if (databaseName.match(/SUBSTR/i)) 
     print(databaseName); 
    } 
); 

> var showdbs = function(pattern) { 
    db.getMongo().getDBNames().forEach(
     function(databaseName) { 
     if (databaseName.match(new RegExp(pattern, 'i'))) 
      print(databaseName); 
    }); 
    }; 

> showdbs('SUBSTR'); // ALL: showdbs(); 
2

我們沒有類似的選項。但你的問題可以通過將結果輸出到一個txt文件,後來打開它

$ mongo | tee outnew.txt 

在蒙戈解決外殼可以在給秀DBS命令並退出。

mongo> show dbs; 
mongo> exit 

然後使用gedit或excel訪問outnew.txt文件。 希望它有幫助。

0

如果您在* nix OS上,您可以運行以下命令。

mongo --eval "db.adminCommand('listDatabases')['databases']" | grep "SUBSTR" 

注意:您需要是admin才能運行此命令。