Дмитрий
Про processmanagement
угу, сейчас его убрал, но что-то все равно ничего
Дмитрий
Вот сейчас мой cfg захожу в cmd в папку, где он лежит - пишу mongod —repair - в консоли то, что выше кидал в службе приложений могу только нажать запустить: пишет ту же 1053 ошибку как-то так
Дмитрий
Nick
Логи смотрите
Дмитрий
{"t":{"$date":"2024-05-23T15:16:13.838+03:00"},"s":"I", "c":"WT", "id":22431, "ctx":"initandlisten","msg":"WiredTiger progress","attr":{"operation":"WT_SESSION.verify","progress":32800}} - в логах спамится это
Дмитрий
security пытался добавлять
Дмитрий
security: authorization: enabled Вот так делал, но это до обращения к вам. Не помогало
Дмитрий
Процесс идет
а что с этим делать, в службах запустить все еще не могу, ошибка 1053 все еще
Дмитрий
и в компасе, соответственно, connect ECONNREFUSED 127.0.0.1:27017, connect ECONNREFUSED ::1:27017
Дмитрий
@yatoba чудо свершилось, спасибо вам огромное
KisaPS
Прошу подсказать, наименее простой способ lookup. Классу Class1 свойства Cost, установить значение ValueCost класса Class2, в поиске по Article. Заведомо зная, что есть только один элемент коллекции Class2 , который соответствует Class1 public class Class1 { public string Id { get; set; } public string Article { get; set; } public int Cost { get; set; } ...... } public class Class2 { public string Id { get; set; } public string Article { get; set; } public int ValueCost { get; set; } ...... }
Nick
replaceRoot тяжелее project'a?
никогда не задумывался, надо тестить. Если выясните, сообщите
KisaPS
Да, понял, только драйвер не позволяет сделать Set, в оболочке проще.
narges
How to solve this error not connect my db INFO:pymongo.serverSelection:{"message": "Waiting for suitable server to become available", "selector": "Primary()", "operation": "find", "topologyDescription": "<TopologyDescription id: 66511096913b5547d dc5eb56, topology_type: Unknown, servers: [<ServerDescription ('localhost', 27017) server_type: Unknown, rtt: None>]>", "clientId": {"$oid": "66511096913b5547ddc5eb56"}, "remainingTimeMS": 30} ------------------------------------------------------------------------------------
Семен
Доброе утро) Можете мне рассказать как работает развертывание сервера монги? Я собираюсь деплоить node js + mongodb сервер на какой ни будь платформе, где можно обновлять сервер с гита Избегаю VPS так как навыков нет и думаю что просто утону там Сервер то я представляю как деплоить и как это работает, а вот с облачной монгой не совсем Это нужно поднимать сервак отдельно и передавать URL в env или можно ее тоже впихать в тот же сервис где крутится монго?
⚡️mnml
Всем привет! Может кто помочь из истории файла mongod.log вытянуть две команды?
Абдурахмон
Привет #вопрос Я загрузил базу данных mongoDB на сервер. Через некоторое время данные внутри удаляются. Как это предотвратить. Как восстановить логику резервного копирования? Как осуществляется этот процесс?
-
Привет #вопрос Я загрузил базу данных mongoDB на сервер. Через некоторое время данные внутри удаляются. Как это предотвратить. Как восстановить логику резервного копирования? Как осуществляется этот процесс?
В каком плане удаляются и как именно вы монго настроили на сервере? Например если через Docker, то там Volume надо настроить, ещё мб у вас настроен index на удаление записей и ещё ... причин. Больше информации надо
Абдурахмон
Я только загрузил . Как написать логику резервного копирования и восстановления?
Абдурахмон
mongodump ?
Vladimir
mongodump ?
+ mongorestore
Alena
Хочу чтобы моя прилага помимо mongoDB на чем нибудь серверлесс типо sqllite запускалась, вообще реально ли это и какие подводные кмни?
Alena
имеет ли смысл на что нибудь типо Prisma переписывать или лучше не надо?
Alena
смотрю сейчас сюда - https://github.com/symisc/unqlite
Абдурахмон
+ mongorestore
как это делается? How is this done?
Абдурахмон
Не могли бы вы научить меня, как это сделать?
Абдурахмон
спасибо. Thanks
Awned
Привет всем, есть какие-то кейсы, как обойти размер 16 мегабайт на BSON файла?
Абдурахмон
В самом деле, пробовал ли кто-нибудь написать логику резервного копирования базы данных mongoDB при ее загрузке на сервер, есть ли в этом необходимость? В моем случае атаковали мой сервер. Вот почему мои данные удалены. Я сразу защитил базу данных.
Vladimir
Все зависит от требований к безопасности и политике резервного копирования, на разных проектах по разному, у нас раз в сутки снимаются дампы на разные машины, а есть проекты, которые через хостера снимки состояния снимают
Евгений
Приветствую! Использую Mongoose. В схеме определено, что определенные поля это ObjectID. Как правильно при запросе их обнулить? Если я приравниваю к null, то и соответственно тип данных меняется (вдруг это не хорошо)
Евгений
Yervand
Приветы! Подскажите пжлст, в чем может быть проблема что nest не подключаеться к базе данных Mongo? Я в первые с nest работаю
Yervand
Спасибо, это все получилось ) даже модели создались в базе данных но вот другая ошибка - типа
Roman
Есть вопрос по монге. 1. Вот я запустил монго в докер-контейнере, почему не получается выполнить вот этот скрипт? (После старта контейнера с этим пользователем в базу не могу войти) print("Started-adding-the-users."); db=db.getSiblingDB()('admin'); use admin; db.auth('root','password'); db.createUser({ user: "root", pwd: "password", roles: [ { role: 'readWrite', db: 'admin', }, { role: 'readWrite', db: 'mydatabase', } ], }); db=db.getSiblingDB()('mydatabase'); db.createUser( { user: "db_user", pwd: "pass123", roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ] } ); db.createCollection('init'); 2. Даже когда присоединяюсь к базе через mongosh и все-таки этот скрипт выполняю, то spring boot приложение с этим же пользоваетелем ругается на отсутствие авторизации. (Unauthorized): 'Command update requires authentication' Что я не так делаю? docker-compose services: mongo: restart: always container_name: mongo image: 'mongo:latest' environment: - MONGO_INITDB_ROOT_USERNAME=root - MONGO_INITDB_ROOT_PASSWORD=password - MONGO_INITDB_DATABASE=mydatabase ports: - '27017:27017' - '27018:27018' - '27019:27019' volumes: - ./mongo/init-mongo.js:/docker-entrypoint-initdb.d/init-mongo-js:ro - ./mongo/data:/data/db
andreyvsc
Есть вопрос по монге. 1. Вот я запустил монго в докер-контейнере, почему не получается выполнить вот этот скрипт? (После старта контейнера с этим пользователем в базу не могу войти) print("Started-adding-the-users."); db=db.getSiblingDB()('admin'); use admin; db.auth('root','password'); db.createUser({ user: "root", pwd: "password", roles: [ { role: 'readWrite', db: 'admin', }, { role: 'readWrite', db: 'mydatabase', } ], }); db=db.getSiblingDB()('mydatabase'); db.createUser( { user: "db_user", pwd: "pass123", roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ] } ); db.createCollection('init'); 2. Даже когда присоединяюсь к базе через mongosh и все-таки этот скрипт выполняю, то spring boot приложение с этим же пользоваетелем ругается на отсутствие авторизации. (Unauthorized): 'Command update requires authentication' Что я не так делаю? docker-compose services: mongo: restart: always container_name: mongo image: 'mongo:latest' environment: - MONGO_INITDB_ROOT_USERNAME=root - MONGO_INITDB_ROOT_PASSWORD=password - MONGO_INITDB_DATABASE=mydatabase ports: - '27017:27017' - '27018:27018' - '27019:27019' volumes: - ./mongo/init-mongo.js:/docker-entrypoint-initdb.d/init-mongo-js:ro - ./mongo/data:/data/db
А вы... сначала логинитесь под рутом, а потом пытаетесь его создать? А так можно?
Roman
А вы... сначала логинитесь под рутом, а потом пытаетесь его создать? А так можно?
Так ошибка была какая-то....а то никакой ошибки нет в логах при старте контейнера. Тут два вопроса. Почему инит скрипт не запускается. И почему даже после создания пользователя руками я не могу к базе подключиться
Anatoly
Всем привет Подскажите, что может быть В докере стоит percona/percona-server-mongodb Стабильно работала 3 года, сейчас начала падать При в логе вижу ошибку "error":0,"message":"[1716891677:414312][1:0x7fc09a2e0700], file:collection-10-6352615800213607137.wt, WT_CURSOR.search: __wt_block_read_off, 296: collection-10-6352615800213607137.wt: potential hardware corruption, read checksum error for 28672B block at offset 21417984: calculated block checksum doesn't match expected checksum" "ctx":"conn4","msg":"Fatal assertion","attr":{"msgid":50853,"file":"src/mongo/db/storage/wiredtiger/wiredtiger_util.cpp","line":574}} mongodb_prod_1 | {"t":{"$date":"2024-05-28T10:25:18.335+00:00"},"s":"F", "c":"-", "id":23090, "ctx":"conn4","msg":"\n\n***aborting after fassert() failure\n\n"} mongodb_prod_1 | {"t":{"$date":"2024-05-28T10:25:18.335+00:00"},"s":"F", "c":"CONTROL", "id":6384300, "ctx":"conn4","msg":"Writing fatal message","attr":{"message":"Got signal: 6 (Aborted).\n"}} При попытке обратиться к коллекции монга падает целиком вместе с контейнером Восстановление с флагом --repair помогает временно, потом проблема появляется опять
Anatoly
Всем привет Подскажите, что может быть В докере стоит percona/percona-server-mongodb Стабильно работала 3 года, сейчас начала падать При в логе вижу ошибку "error":0,"message":"[1716891677:414312][1:0x7fc09a2e0700], file:collection-10-6352615800213607137.wt, WT_CURSOR.search: __wt_block_read_off, 296: collection-10-6352615800213607137.wt: potential hardware corruption, read checksum error for 28672B block at offset 21417984: calculated block checksum doesn't match expected checksum" "ctx":"conn4","msg":"Fatal assertion","attr":{"msgid":50853,"file":"src/mongo/db/storage/wiredtiger/wiredtiger_util.cpp","line":574}} mongodb_prod_1 | {"t":{"$date":"2024-05-28T10:25:18.335+00:00"},"s":"F", "c":"-", "id":23090, "ctx":"conn4","msg":"\n\n***aborting after fassert() failure\n\n"} mongodb_prod_1 | {"t":{"$date":"2024-05-28T10:25:18.335+00:00"},"s":"F", "c":"CONTROL", "id":6384300, "ctx":"conn4","msg":"Writing fatal message","attr":{"message":"Got signal: 6 (Aborted).\n"}} При попытке обратиться к коллекции монга падает целиком вместе с контейнером Восстановление с флагом --repair помогает временно, потом проблема появляется опять
места полно, сервер в аптайме месяц, проблема только вчера появилась
Nick
Всем привет Подскажите, что может быть В докере стоит percona/percona-server-mongodb Стабильно работала 3 года, сейчас начала падать При в логе вижу ошибку "error":0,"message":"[1716891677:414312][1:0x7fc09a2e0700], file:collection-10-6352615800213607137.wt, WT_CURSOR.search: __wt_block_read_off, 296: collection-10-6352615800213607137.wt: potential hardware corruption, read checksum error for 28672B block at offset 21417984: calculated block checksum doesn't match expected checksum" "ctx":"conn4","msg":"Fatal assertion","attr":{"msgid":50853,"file":"src/mongo/db/storage/wiredtiger/wiredtiger_util.cpp","line":574}} mongodb_prod_1 | {"t":{"$date":"2024-05-28T10:25:18.335+00:00"},"s":"F", "c":"-", "id":23090, "ctx":"conn4","msg":"\n\n***aborting after fassert() failure\n\n"} mongodb_prod_1 | {"t":{"$date":"2024-05-28T10:25:18.335+00:00"},"s":"F", "c":"CONTROL", "id":6384300, "ctx":"conn4","msg":"Writing fatal message","attr":{"message":"Got signal: 6 (Aborted).\n"}} При попытке обратиться к коллекции монга падает целиком вместе с контейнером Восстановление с флагом --repair помогает временно, потом проблема появляется опять
запускайте проверку дисков и доставайте бэкапы
Anatoly
запускайте проверку дисков и доставайте бэкапы
Проверка дисков не нашла ошибок Попробовал восстановить с —repair, снять дамп и залить на другую машину, там тоже самое появляется через какое-то время если загнать клиентов. Проблема в одной коллекции, остальные нормально читаются. И после репаир коллекция читается и все работает, пока не запустить юзеров.
Alisher
Всем привет, есть такой кейс, мы на фронте делаем апдейт поля, скажем FullName = Вася, обновляем на Петю. Запрос на апдейт проходит успешно. Сразу после апдейта пробуем запросить это поле через Find, но почему то мы получаем не обновленное значение а стару т.е Вася, а хотели бы Петю. Может ли это быть из за replication lag, то есть если мы читаем со слейва, то обновленное значение еще не дошло до слейва? или могут ли быть еще какие то другие признали, или хотя бы подскажите пожалуйста как можно продебажить этот момент
Anatoly
версия монги?
была mongo 5.0.6-5, обновил до 5.0.26-22, проблема так и осталась на другой машине новый контейнер с 5.0.26-22 с залитым дампом и той же проблемой
yopp
Всем привет Подскажите, что может быть В докере стоит percona/percona-server-mongodb Стабильно работала 3 года, сейчас начала падать При в логе вижу ошибку "error":0,"message":"[1716891677:414312][1:0x7fc09a2e0700], file:collection-10-6352615800213607137.wt, WT_CURSOR.search: __wt_block_read_off, 296: collection-10-6352615800213607137.wt: potential hardware corruption, read checksum error for 28672B block at offset 21417984: calculated block checksum doesn't match expected checksum" "ctx":"conn4","msg":"Fatal assertion","attr":{"msgid":50853,"file":"src/mongo/db/storage/wiredtiger/wiredtiger_util.cpp","line":574}} mongodb_prod_1 | {"t":{"$date":"2024-05-28T10:25:18.335+00:00"},"s":"F", "c":"-", "id":23090, "ctx":"conn4","msg":"\n\n***aborting after fassert() failure\n\n"} mongodb_prod_1 | {"t":{"$date":"2024-05-28T10:25:18.335+00:00"},"s":"F", "c":"CONTROL", "id":6384300, "ctx":"conn4","msg":"Writing fatal message","attr":{"message":"Got signal: 6 (Aborted).\n"}} При попытке обратиться к коллекции монга падает целиком вместе с контейнером Восстановление с флагом --repair помогает временно, потом проблема появляется опять
Проверьте unlimt, может signal 6 обычно с нехваткой декскрипторов связан. Идеально unlimited
Anatoly
Проверьте unlimt, может signal 6 обычно с нехваткой декскрипторов связан. Идеально unlimited
а на что смотреть? core file size (blocks, -c) 0 data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 63876 max locked memory (kbytes, -l) 65536 max memory size (kbytes, -m) unlimited open files (-n) 1024 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) 63876 virtual memory (kbytes, -v) unlimited file locks (-x) unlimited core file size (blocks, -c) unlimited data seg size (kbytes, -d) unlimited scheduling priority (-e) 0 file size (blocks, -f) unlimited pending signals (-i) 63876 max locked memory (kbytes, -l) 64 max memory size (kbytes, -m) unlimited open files (-n) 1048576 pipe size (512 bytes, -p) 8 POSIX message queues (bytes, -q) 819200 real-time priority (-r) 0 stack size (kbytes, -s) 8192 cpu time (seconds, -t) unlimited max user processes (-u) unlimited virtual memory (kbytes, -v) unlimited file locks (-x) unlimited
yopp
open files (-n) 1024
Artem
Ребят, всем привет! У нас MongoDB, и мы хотим на 100% знать, что поле не используется. Так как это не реляционная база данных, то обращение к несуществующему полю для неё нормально. Вопрос: можно ли как-то на уровне базы данных отследить и запретить использование поля (а в идеале разрешить только с каким-то флагом, в остальных случаях запрещать)?
Дмитрий
ага, как пример. Некий аналог Row-Level-Security в реляционных СУБД
не помню как это для "чистой" монги, но в связке с mongoose поля исключаются просто через .select('-password -token') const user = await UserModel.findOne({ _id: userId }) .select('password -token')
yopp
а можно какой-нибудь кейс?) речь о том, что когда мы условно получаем Юзера, то нужно исключить поле password, например?)
https://www.mongodb.com/docs/manual/core/views/ + включенный RBAC который запрещает доступ к оригинальной коллекции тем пользователям, которым нельзя видеть оригинальные данные
yopp
https://www.mongodb.com/developer/products/mongodb/secure-data-access-views/ тут пример с правами
Дмитрий
если бы мы не обновляли не того юзера у нас бы весь отдел встал, так что да я уверен что я обновляю одного и того же юзера
значит на бэке нужно проверить приходит ли верно имя и верное ли поле указано для обновления (условно вы опечатались и обновляете "token" вместо userName)
Alisher
значит на бэке нужно проверить приходит ли верно имя и верное ли поле указано для обновления (условно вы опечатались и обновляете "token" вместо userName)
мне бы хотелось получить более глубокие причины того что случается, т.к все о чем вы говорите не вариант
Дмитрий
практика показывает, что "баги" всегда таятся в мелочах) но если вы во всём уверены - то ок )
Anatoly
open files (-n) 1024
Спасибо Увеличил, не помогло, проблема появляется