2016-08-02 67 views
5

Meteor'da harici bir MongoDB örneğine nasıl bağlanacağını öğrenmek istiyorum.Meteor'da dış MongoDB örneğine nasıl bağlanır?

ben bu ortamı

Meteor.startup(function() { 
process.env.MONGO_URL = 'mongodb://[UN]:PW]@[host]:[port]/meteorTest' 
}); 

ama hala veri yerel veritabanından geliyor ekledik.

Tüm koleksiyonları yerel db'mden bu harici db'ye taşımak istiyorum. Tüm öğreticileri okudum, hepsi bu evn değişkenini ayarlamamı söylüyor ama gerçekten işe yarayan hiçbir şey yok. Bağlantısının olup olmadığını nasıl test edebilirim?

+0

[link] (http://basvdijk.com/meteor-with-external-mongodb/) - Verilen bağlantıya bakın, cevabınızı bulabileceğinizi umuyoruz – Sampad

+0

Zaten bunu okudum ama terminal satırına veya meteor başlangıcına kod satırını eklemem gereken bir şey yapmak için? Eğer bunu başlangıçta ekliyorsam, eğer bu terminali eklediyse erros'u fırlatırsanız, ihracat bir komut değil –

+0

terminali – Sampad

cevap

15

Kendi tecrübemde; Meteorjs sunucu uygulamasına başlamadan önce ortam değişkenini ayarlamanız gerekiyor. Bunu yapmak için, meteor'ı çağırırken ortam değişkenini komut satırında geçirmeniz veya sisteminizde meteor uygulamasını çalıştıran profilin ortamını önceden ayarlamanız gerekir.

Yani bir komutun bu tür uygulamanızı başlayacaktı:

MONGO_URL='mongodb://user:[email protected]:12345/' meteor 

Ayrıca mongodb ulaşılabilir olduğunu ve kullanıcı kimlik bilgilerinizin doğru olduğundan emin olmalısınız! Uzak bir mongodb örneğini kullanarak yerel makinenizde meteor çalıştırmaya çalıştığınızı farz ediyorum.

Windows'un günü

Sen ortam değişkeni çağırmak için meteor uygulama klasöründe bir toplu iş dosyası oluşturmak gerekir. Bunun bir örneği burada vardır: Komut isteminde https://stackoverflow.com/a/29833177/1997579

+0

'MONGO_URL' terminaline bu hatayı atmak iç veya dış komut olarak, çalıştırılabilir program veya toplu iş dosyası olarak tanınmadı. –

+0

Yani bir pencere makinesinde misin? Eğer öyleyse, lütfen bu cevabı bakın: http://stackoverflow.com/a/29833177/1997579 – Katalyst

+0

'startup.bat' ismiyle bir .bat dosyası oluşturdum ama yine de çalışırken ben MONGO_URL = 'mongodb: // user : [email protected]: 12345/'meteor –

0

koşmak it:

"MONGO_URL=mongodb://<USER>:<PASSWORD>@<SERVER>:<PORT>/<DB> meteor" 

veya proje klasörüne ve çalıştırma meteor

3

bilmiyorum run.sh dosyasında bu url kaydetmek büyük tekrarlama komutunu kullanmayı severim ve meteor uygulamasına her başladığımda bir şeyle gömülü bir değişken ayarlayacağım bir çözüm arıyordum; MONGO_URL otomatik olarak çevreye ayarlanacaktır. Yani bu ne yaptım: package.json dosyasında

Ben aşağıda başlangıç ​​parametresi değiştirilir: Artık

"scripts": { 
    "start": "MONGO_URL=mongodb://username:[email protected]_url:portnumber/dbname meteor run" 
    }, 

Uygulamamı çalıştırmak istediğiniz her zaman; Ben npm start yerine

Not meteor veya meteor run çalıştırın: bir dezavantaj bununla yoktur. Db kimlik bilgilerinizi package.json dosyasına koyarsanız ve bu dosyayı sürüm denetimine eklerseniz, db kimlik bilgileriniz açığa çıkar.