сайт для палких паяльників

“Склерозник” по основным командам MongoDB.

Запуск клиента:

sudo mongo

Список баз:

show dbs

Использовать базу (demo — имя базы):

use demo

Список collections:

show collections

Добавить пользователя в админы со всеми правами:

use admin
db.createUser({user:"root", pwd:"root", roles:[ "root"]})

Или с указанием ролей:

db.createUser({user:"admin", pwd:"password", roles:[ "userAdminAnyDatabase", "dbAdminAnyDatabase", "readWriteAnyDatabase"]})
db.createUser({user:"admin", pwd:"password", roles:[ "dbOwner" ]})

Аутентифицироваться с командной строки:

sudo mongo -u root -p root --authenticationDatabase admin
sudo mongo -u admin -p admin --authenticationDatabase test

Системная информация о базе:

db.stats()

Системная информация о collections:

db.test.stats()

Список индексов в collection:

db.test.getIndexes()

Вставка документа в collection users:

db.users.insert({"name":"username"})

Выборка по условю (По одному полю):

db.test.find({"name":"Andre"})

Выборка по условию (И):

db.test.find({"name":"Andre","id":"2"})

Выборка по условию (Больше):

db.numbers.find({num:{"$gt": 60000}})

Выборка по условию (В диапазоне):

db.numbers.find({num:{"$gt": 60000, "$lt": 60010}})

Обновление записи:

db.test.update({"_id":ObjectId("5aae3be1b371d7112a438547")}, {$set: {name:"Patya", id:3}})

db.users.update( { "favorites.movies": "Casblanca"},
    {$addtoSet: {"favorites.movies": "The Maltese Falcon"} },
    false,
    true )

Четвертый параметр true – говорит, что это множественное обновление. По умолчанию MongoDB обновит только первую запись подходящую по условию.

Обновление документа (SAVE) если нет поля _id, тогда будет создан новый документ:

db.test.save({"_id":ObjectId("5aae3be1b371d7112a438547")}, {$set: {name:"Patya", id:3}})

Удаление документов:

db.test.remove({"_id":ObjectId("5aae3be1b371d7112a438547")})

Подсчет кол-ва документов:

db.numbers.count()

Удалить коллекцию со всеми данными и индексами:

db.test.drop()

Запрос с выводом информации о выполнении для дальнейшего анализа:

db.numbers.find({num:{"$gt": 60000}}).explain("executionStats")

Создать индекс по полю num по возрастанию:

db.numbers.ensureIndex({num: 1})

Експорт / Импорт

Експорт (mongoexport) в JSON, CSV, TSV:

mongoexport --host=127.0.0.1 --port=27017 --db=test --collection=test --type=json --out=test_test.json --jsonArray --pretty  

Импорт (mongoimport) из JSON, CSV, TSV

mongoimport --host=127.0.0.1 --port=27017 --db=test --collection=test --file=test_test.json --type=json --jsonArray

Информация и статистика

mongostat

Удачи.

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *

 
Translate
Архіви

© 2011-2018 Андрій Корягін, Кременчук - Київ, Україна