所以,我確信我在這裏錯過了一些簡單的東西,但是當我將mongo作爲守護進程運行時(使用mongod -fork或者只是mongod)看到不同的數據庫內容比如果我只是在主機上運行「mongo」。Mongodb - 運行「mongo」和「mongod」數據庫之間的區別
我唯一的假設是,當數據正在運行shell時,數據將被存儲在/ data/db以外的其他地方,並且在啓動mongod時切換到/ data/db。在那種情況下,運行mongod時如何獲得我的數據?
所以,我確信我在這裏錯過了一些簡單的東西,但是當我將mongo作爲守護進程運行時(使用mongod -fork或者只是mongod)看到不同的數據庫內容比如果我只是在主機上運行「mongo」。Mongodb - 運行「mongo」和「mongod」數據庫之間的區別
我唯一的假設是,當數據正在運行shell時,數據將被存儲在/ data/db以外的其他地方,並且在啓動mongod時切換到/ data/db。在那種情況下,運行mongod時如何獲得我的數據?
我認爲這裏有一些困惑。
mongod
是「Mongo Daemon」,它基本上是數據庫的主機進程。當你開始mongod
你基本上說「啓動MongoDB進程並在後臺運行」。 mongod
具有若干默認參數,諸如在/data/db
存儲數據和在端口27017
mongo
運行在命令行外殼連接到的mongod
一個特定實例。當您運行mongo
而沒有參數時,它默認爲連接到端口27017上的本地主機。如果針對無效的機器:端口組合運行mongo
,那麼它將無法連接(並告訴您儘可能多)。
理想情況下,除了「玩耍」之外,您還可以使用Command Line Parameters來啓動mongod
。通過相同的措施,您應該使用明確的說明啓動mongo
外殼程序。
根據您的描述,我認爲您可能會遇到有關使用默認數據庫的問題。開始嘗試用mongo
以下(其中dbname
是你的數據庫名稱)
./mongo localhost:27017/dbname
不知道你是問在這裏,但mongod的是數據庫服務器和蒙戈是客戶端。那麼,「我看到不同的數據庫內容」是什麼意思? – mikezter 2011-03-17 13:08:56