Frontend
Йоу. А какой самый простой способ перекинуть с локалки базу данных на ремоут монгу? Сделать дамп в bson и перекинуть через SSH не получается, так как scp не хочет отправлять файл, говорит lost connection, ублюдок, мать его.
Frontend
Как можно находясь на ремоут сервере через SSH сделать mongodump с локального сервера? Например вот я с мака захожу на VPS и хочу на VPS залить mongodump с БД которая на маке.
Ivan
mongodump --uri=$sourceDbUrl --gzip --archive | mongorestore --uri=$targetDbUrl --nsInclude="*" --nsFrom="$sourceDb.*" --nsTo="$targetDb.*" --gzip --archive --drop
Дропнет базу на target Удобно чтобы создавать копии прода для дев среды Работает быстро, 5 млн документов за секунд 40
Frontend
mongodump --uri=$sourceDbUrl --gzip --archive | mongorestore --uri=$targetDbUrl --nsInclude="*" --nsFrom="$sourceDb.*" --nsTo="$targetDb.*" --gzip --archive --drop
Где что нужно запускать? Нашел способ еще – сделать обычный mongodump и через wormhole перекинуть на сервер
Ivan
Главное чтобы и тот и тот был доступен из интернетов или локально но тогда на нем И были доступы
.
Всем привет! Подскажите пожалуйста, как можно сделать так, чтобы с любого айпи можно было делать запрос к бд
.
Теперь остаётся найти эту кнопку :D
P1GAS
https://stackoverflow.com/questions/65948083/mongodb-whitelist-ip
P1GAS
В network access
.
Спасибо, очень благодарен
P1GAS
Угу
Alex
Всем привет. ПОдскажите что за способ написания запросов? Первый раз такое вижу
Alex
Как можно обновить все записи в базе, у которыз нет поля? Мне надо написать миграцию, у меня пояилось новое поле в схеме. Нужно всем существующим записям добавить поле status со значением "SUCCESS"
Alex
Alex
Правильно?
Alex
Артём
$exists правильно
Anonymous
Всем доброго вечера. Подскажите, вот я хочу взаимодействовать с базой из кода, как быть с коннектами? У меня веб-сайт, мне нужно на каждый запрос пользователя открывать коннект к базе, а потом его закрывать? Или лучше держать один общий коннект на всех пользователей?
Andrey
Всем доброго вечера. Подскажите, вот я хочу взаимодействовать с базой из кода, как быть с коннектами? У меня веб-сайт, мне нужно на каждый запрос пользователя открывать коннект к базе, а потом его закрывать? Или лучше держать один общий коннект на всех пользователей?
смотря как сами решите, как в коде реализуете, если политика доступа к базе для каждого пользователя своя, то открывайте в его контексте и закрывайте потом, а если просто чтение, для «всех», я «один коннект» держу.
Dmitry
Всем доброго вечера. Подскажите, вот я хочу взаимодействовать с базой из кода, как быть с коннектами? У меня веб-сайт, мне нужно на каждый запрос пользователя открывать коннект к базе, а потом его закрывать? Или лучше держать один общий коннект на всех пользователей?
Смотрите документацию своего драйвера. Он отвечает за кэширование. Объект "подкдючение "драйвера не создает одно подключение. Их по умолчанию 100. Один раз создали объект. и пользуйтесь https://docs.mongodb.com/manual/administration/connection-pool-overview/
Anonymous
Спасибо за помощь
Anonymous
Я вот думаю, у меня есть пользователь и его покупки, покупок может быть до 100000, а максимальный объем документа вроде 16мб? Как в таком случае хранить, не складывать же все покупки в массив в документе пользователя?
Ivan
Все покупки в отдельной коллекции, с айдишкой овнера покупки Получать через локап
.
Всем привет! Подскажите, что это за ошибка? ЯП: Питон Библиотека: pymongo All nameservers failed to answer the query
Dmitry
А при исчерпании пула, он же напишет в лог об этом?
В лог монго? драйвер не пишет. Он будет управлять очередью. Можно выставить waitQueueTimeoutMS и ловить ошибку
Vadim
Приветсвтую, пишу логи в отдельную коллекцию, в payload складываю изменяемый объект. Хочу вывести все логи, с заданным _id, который хранится в payload. Пример объекта: { _id: Id записи в кол-ий, payload: { username: name, _id: id } Делаю запрос вида: Logger.find({ payload: {$eq: id}}) Подскажите что делаю нет так?
Vadim
не, не работает
Michael
Привет. Такая проблема. Делаю бота для тг. Тут как бы у всего есть свои айди, я могу их как-то использовать вместо ObjectID? По-сути айди документа мне не нужен
Michael
Да
То есть можно на них поставить индексы и полностью убрать ключ обжект айди? Помогите сформировать запрос в поисковую систему :)
Michael
Vadim
вроде работает как нужно...
Vadim
Но почему с базой не выходит
Vadim
Возможно не во всех payload'ах есть _id
Cloud
Я бы предложил просто добавить поле messageid Работать с ним и не париться
Vadim
Хорошо, если не найду способа починить, так и сделаю видимо.
Vadim
Получилось добыть данные. Т.к в payload хранил непосредственно ObjectId(id), то предварительно пришлось строку преобразовывать через конструктор объекта
Vadim
const id = new ObjectId(req.params.id);
Null
Возможно не во всех payload'ах есть _id
у меня почти все боты на _id
Maxmudjon
всем доброго времени суток, при популация можно ли слелать скип и лимит ?
Anonymous
Привет, создают ли id в монге ? или это плохая практика ведь есть же уникальный id?
Qoo
всем доброго времени суток, при популация можно ли слелать скип и лимит ?
Привет Если верно понял вопрос, то https://stackoverflow.com/questions/32207457/node-js-mongoose-populate-limit
Qoo
Привет, создают ли id в монге ? или это плохая практика ведь есть же уникальный id?
Типа не оч практика, но ничего не мешает генерить свои айди Не забудь проиндексировать, если собираешься по ним искать (а зачем они ещё нужны) 🙂
Anonymous
Привет Если верно понял вопрос, то https://stackoverflow.com/questions/32207457/node-js-mongoose-populate-limit
Ну вот мне про практику) думаю тоже не хорошее дело)
Qoo
Ну вот мне про практику) думаю тоже не хорошее дело)
Если история не вынужденная - лучше наслаждайся родными айдишниками
Anonymous
Если история не вынужденная - лучше наслаждайся родными айдишниками
ну типа по описанию модели есть айди но наверное тот кто писал не думал что будет монга
Qoo
ну типа по описанию модели есть айди но наверное тот кто писал не думал что будет монга
Очень на это похоже Если это уникальный идентификатор, который нужен, чтобы чего-то найти, связать коллекции - смело пользуй нативный монговский айди 🙂
Edgar
Hey guys, Can someone advise, how can I insert new record into Mongo DB and increment some counter column there after successfully insertion in one operation using Mongo Driver in C#?
Alex
Всем привет, что будет если вызвать эту команду, а коллекции не будет существовать? await conn.collection("dataIndex").deleteMany({});
Alex
упадет ошибка или нет?
Максим
.
Pavel
Добрый день. Подскажите почему может обрываться подключение в приложении на express + apollo, при этом через консоль нормально подключаюсь к базе
Frontend
Главное чтобы и тот и тот был доступен из интернетов или локально но тогда на нем И были доступы
Не совсем понимаю, если делать mongodump на том сервере, на который нужно закинуть данные, то создастся бекап пустой БД, который мне не нужен
Yura
Привет, а неужели нельзя одновременно использовать транзакции и опцию readPreference=secondaryPreferred одновременно? И если нет, то как можно в такому случае разпределять нагрузку между нодами в replica set?
Volodya
Всем привет. Сделал схему чата и сообщений. Можете подсказать, какая лучше и почему? Что сделано плохо? Сильно не бейте делал впервые
Volodya
Nick
Всем привет. Сделал схему чата и сообщений. Можете подсказать, какая лучше и почему? Что сделано плохо? Сильно не бейте делал впервые
вторая лучше для изучения синтаксиса запросов монги, намучаетесь вдоволь с вложенными массивами. Для реального использования первая получше, но тут тоже у вас есть слабое место со списком юзеров, да еще и совмещающее в себе роль и настройки юзеров, что уже создает проблемы в части логической структуры- все же роли это роли (админы, гмы, и т.п.) выдаются владельцем, параметры (мьют, нотифаед) настариваются юзером, а lastActiveTime так и вообще глобальная для юзера и к чату отношения не имеет
камил
Привет, как получить данные из агрегации в nodejs mongodb?
камил
я делаю агрегацию и получаю это
камил
я делаю агрегацию и получаю это
вот что я пытаюсь сделать
камил
я делаю агрегацию и получаю это
Я должен получить документ из коллекции, но получаю курсор
Qoo
exac() не забыл?
камил
exac() не забыл?
я toArray() добавил и все заработало