2012-08-03 97 views
44

,檢查出的(生產)什麼是數據庫blah.meteor.com我以爲我們只是做:訪問流星生產數據庫

meteor mongo --url http://blah.meteor.com/ 

而是我得到一個URI:

mongodb://client:[email protected].com:27017/blah_meteor_com 

我會怎樣使用這個URI來訪問數據庫?

回答

73

您應該使用meteor mongo http://blah.meteor.com;或甚至更短meteor mongo blah.meteor.com

有關文檔,您可以運行meteor help mongo。從運行上述help命令中提取出來:

而是打開一個殼,指定--url(-U)將返回的URL 適於外部程序連接到數據庫的。對於已部署應用程序上的遠程 數據庫,URL有效期爲一分鐘。

那麼它說的是,通過與--url選項運行該命令所提供的是通過一些外部應用程序,即比meteor其它連接到數據庫。

UPDATE:

當您連接到MongoDB的,你應該得到類似這樣的問候語:

MongoDB shell version: 2.0.2 
connecting to: skybreak.member1.mongolayer.com:27017/userdb_meteor_com 

輸入以下命令:use userdb_meteor_com(其中userdb_meteor_com從取上面的問候消息中的URL)。

要查看您的收藏(通常它們指的是在您的Meteor應用中創建的收藏):show collections。你應該得到這樣的事情:

system.indexes 
system.users 
users 

現在可以照常運行命令,例如:db.users.find({});

+0

謝謝。現在我能夠成功連接,但每次查詢時,都會說我是未經授權的。我不記得輸入任何密碼。流星默認設置用戶名和密碼嗎? – genkiro 2012-08-03 20:58:18

+0

沒問題。我現在更新我的答案。希望能幫助到你。 – nsmeta 2012-08-03 21:23:01

+1

Awesomeeee!再次感謝!有一個旺季的週末。 – genkiro 2012-08-03 22:20:53

14

nsmeta的翔實回答的簡化版本的高速掃描儀在那裏:

$ meteor mongo blah.meteor.com 
connecting to: ... 
> show collections 
    stuff 
> db.stuff.find() 
    {"_id" : "abcdedghiasdjlahf", stuff: "yeah!" } 
3

UPDATE 2016年

meteor mongo命令不工作了,因爲blah.meteor.com數據庫版本3.0而meteor mongo命令仍處於版本2.6.7。 (關於Meteor的最新版本,v1.2.1)。

而是安裝蒙戈CLI並運行此命令:

mongo `meteor mongo --url blah.meteor.com | sed 's/mongodb:\/\//-u /' | sed 's/:/ -p /' | sed 's/@/ /'`

更多細節:Accessing meteor production database in 2016