Szukaj…
Wprowadzenie
MongoDB to darmowy i otwarty na wiele platform program bazujący na orientacji dokumentów. W przeciwieństwie do klasycznych baz SQL, MongoDB używa BSON (jak JSON) do przechowywania danych. Meteor został zaprojektowany do używania MongoDB do przechowywania baz danych, a ten temat wyjaśnia, jak zaimplementować przechowywanie MongoDB w aplikacjach Meteor.
Eksportuj zdalną bazę danych Mongo, importuj do lokalnej bazy danych Meteor Mongo
Przydatne, gdy chcesz pobrać kopię produkcyjnej bazy danych, aby pobawić się lokalnie.
-
mongodump --host some-mongo-host.com:1234 -d DATABASE_NAME -u DATABASE_USER -p DATABASE_PASSWORD
Spowoduje to utworzenie lokalnego katalogudump
; w tym katalogu zobaczysz katalog ze swojąDATABASE_NAME
. - Przy uruchomionej lokalnej aplikacji Meteor z katalogu
dump
uruchom:mongorestore --db meteor --drop -h localhost --port 3001 DATABASE_NAME
Uzyskaj adres URL Mongo swojego lokalnego konta Meteor Mongo DB
Gdy aplikacja Meteor działa lokalnie:
meteor mongo --url
Połącz lokalną aplikację Meteor z alternatywną bazą danych Mongo
Ustaw MONGO_URL
środowiskową MONGO_URL
przed uruchomieniem lokalnej aplikacji Meteor.
Przykład Linux / MacOS:
MONGO_URL="mongodb://some-mongo-host.com:1234/mydatabase" meteor
lub
export MONGO_URL="mongodb://some-mongo-host.com:1234/mydatabase"
meteor
Przykład systemu Windows
Uwaga: nie używaj "
set MONGO_URL=mongodb://some-mongo-host.com:1234/mydatabase
meteor
NPM
//package.json
"scripts": {
"start": "MONGO_URL=mongodb://some-mongo-host.com:1234/mydatabase meteor"
}
$ npm start
Uruchamianie Meteora bez MongoDB
Ustaw MONGO_URL
na dowolną wartość, z wyjątkiem adresu URL bazy danych i upewnij się, że żadne kolekcje nie są zdefiniowane w projekcie Meteor (w tym kolekcje zdefiniowane przez pakiety Meteor), aby uruchomić Meteor bez MongoDB.
Zauważ, że bez MongoDB, metody serwer / klient wraz z wszelkimi pakietami związanymi z systemem kont użytkowników Meteor nie będą zdefiniowane. Przykład: Meteor.userId()
Linux / Mac:
MONGO_URL="none" meteor
lub
export MONGO_URL="none"
meteor
Windows:
set MONGO_URL=none
meteor
Pierwsze kroki
Możesz uruchomić powłokę mongo
, uruchamiając następujące polecenie w projekcie Meteor:
meteor mongo
Uwaga: Uruchomienie konsoli bazy danych po stronie serwera działa tylko wtedy, gdy Meteor uruchamia aplikację lokalnie.
Następnie możesz wyświetlić listę wszystkich kolekcji, wykonując następujące polecenie za pomocą powłoki mongo
:
show collections
Możesz także uruchamiać podstawowe operacje MongoDB, takie jak wyszukiwanie, wstawianie, aktualizowanie i usuwanie dokumentów.
Dokumenty zapytania
Dokumenty można wyszukiwać za pomocą metody find()
, np .:
db.collection.find({name: 'Matthias Eckhart'});
Spowoduje to wyświetlenie wszystkich dokumentów, dla których atrybut name
ustawiony na Matthias Eckhart
.
Wstawianie dokumentów
Jeśli chcesz wstawić dokumenty do kolekcji, uruchom:
db.collection.insert({name: 'Matthias Eckhart'});
Aktualizowanie dokumentów
Jeśli chcesz zaktualizować dokumenty, użyj metody update()
, na przykład:
db.collection.update({name: 'Matthias Eckhart'}, {$set: {name: 'John Doe'}});
Wykonanie tego polecenia spowoduje zaktualizowanie pojedynczego dokumentu poprzez ustawienie wartości John Doe
dla name
pola (początkowo była to Matthias Eckhart
).
Jeśli chcesz zaktualizować wszystkie dokumenty spełniające określone kryteria, ustaw parametr multi
na true
, na przykład:
db.collection.update({name: 'Matthias Eckhart'}, {$set: {name: 'John Doe'}}, {multi: true});
Teraz wszystkie dokumenty w kolekcji, które początkowo miały ustawiony atrybut name
Matthias Eckhart
, zostały zaktualizowane do wersji John Doe
.
Usuwanie dokumentów
Dokumenty można łatwo usunąć za pomocą metody remove()
, na przykład:
db.collection.remove({name: 'Matthias Eckhart'});
Spowoduje to usunięcie wszystkich dokumentów, które pasują do wartości określonej w polu name
.