MongoDB
Полезные ссылки
Сервер
Установка сервера
docker volume create mongodata docker run --name mongodb \ -d \ --restart=unless-stopped \ -v mongodata:/data/db \ -p 127.0.0.1:27017:27017 \ -e MONGO_INITDB_ROOT_USERNAME=user \ -e MONGO_INITDB_ROOT_PASSWORD=secret \ mongodb/mongodb-community-server:latest
Установка и настройка клиeнта mongosh
sudo apt-get install -y mongodb-mongosh mongosh --version
Подключение к БД
mongosh "mongodb://localhost:27017" # --- подключаемся с аутентификацией mongosh "mongodb://localhost:27017" --username user --authenticationDatabase admin # --- подключаемся с аутентификацией к БД my_database mongosh "mongodb://localhost:27017/my_database" --username user --authenticationDatabase admin
Работаем в mongosh
Команды
# --- переключение БД use database
Агрегация
# --- на входе - коллекция документов {filename: '/foo/bar'} # на выходе - один документ {filenames: ['/foo/bar1', '/foo/bar2', ...]} db.parsedFiles.aggregate([ { $group: { _id: null, filenames: { $addToSet: "$filename" } } }, { $project: { _id: 0, filenames: 1 } }]); # --- преобразование типов # на входе - {age: "25"} # на выходе - {age: 25} db.students.aggregate([{$addFields: {age: {$toInt: "$age"}}}, {$out: "students"}])
Установка и настройка клиента Compass
sudo dpkg -i mongodb-compass_1.39.0_amd64.deb mongodb-compass