2015-03-03 63 views
1

如何從mongo shell中爲Mongo(v2.2.0)指定修復路徑?如何從mongo shell中指定修復路徑?

例如,我可以正常運行命令:

mongod --repair --repairpath /opt/vol2/data 

我怎麼能指定的修復路徑,如果我使用以下語法從外殼內:

db.repairDatabase() 

回答

0

repairDatabase命令在當前連接到的數據庫上執行,並通過擴展名在當前數據庫的數據所在的路徑上執行。

您可以定義使用use [dbname]命令從蒙戈外殼內要使用哪個數據庫:

the docs摘自:

use <db>
切換當前數據庫<db>。 mongo shell變量 db設置爲當前數據庫。

或者,您可以指定starting the actual shell時要使用的數據庫。例如,如果你想連接到在端口27016運行my_db數據庫的殼,你會用下面的命令啓動蒙戈外殼:

$ mongo my_db

要找出你是哪個數據庫目前使用,你可以簡單地在shell中鍵入db,你會得到當前數據庫的名稱。

+0

問題是我當前的存儲沒有足夠的存儲空間來執行repairDatabase。我需要指定我的外部塊存儲,以便操作可以真正完成。 – user2694306 2015-03-03 11:35:25

+1

在這種情況下,您無法從外殼運行修復。您必須從命令行運行它才能更改修復路徑。參見[repairDatabase](http://docs.mongodb.org/manual/reference/command/repairDatabase/#dbcmd.repairDatabase)。 – wdberkeley 2015-03-03 16:15:50