MongoDB 2Gb limit - не может сжать базу данных - PullRequest
1 голос
/ 08 ноября 2011

Я добавляю файлы в GridFS в моей 32-битной базе данных Mongo. Это в конечном итоге не удалось, когда размер всех файлов Mongo достиг 2 ГБ. Итак, я удалил файлы в GridFS. Я попытался запустить команду repairDatabase (), но она не удалась, сказав, что "mongo требует 64 бит для больших наборов данных". Я получаю ту же ошибку при попытке запустить команду compact с GridFS.

Итак, я достиг предела в 2 Гб, но он не позволит мне сжать или починить, потому что у него нет места. Поговорим о Catch22 !!

Что мне делать?

Редактировать У меня есть непосредственная проблема - как мне сжать базу данных прямо сейчас?

Ответы [ 3 ]

2 голосов
/ 08 ноября 2011

Я думаю, что единственным выходом является обновление до 64-битной ОС.

1 голос
/ 09 ноября 2011

У меня была такая же проблема в моей базе данных, и я решил ее таким образом. Сначала я создал 64-битный экземпляр Amazon EC2 и переместил файлы базы данных из 32-битного экземпляра в виде обычной копии. Затем я сделал все необходимые очистки в базе данных на 64-битном экземпляре и сделал дамп с помощью mongodump. Этот дамп я перенес обратно на 32-битный экземпляр и восстановил базу данных из него. Если вам нужно восстановить базу данных с тем же именем, которое у вас было раньше, вы можете просто переименовать ваши старые db-файлы в dbpath (файлы имеют имя базы данных в своем имени) И, конечно же, вам следует перейти на 64-битную версию позже. MongoDB на 32-битной ОС очень плохо поддерживает.

0 голосов
/ 08 ноября 2011

снимок в темноте здесь ... вы можете попробовать открыть ведомое устройство на главном сервере (в 64-битном режиме) и посмотреть, сможете ли вы принудительно перенести репликацию на ведомое устройство, по существу, создав резервные копии ваших данных.Я понятия не имею, сработает ли это на самом деле, так как довольно ясно, что 32-битный имеет ограничение в 2 гигабайта (все их документы предупреждают об этом :(), но думал, что я хотя бы опубликую несколько потенциально креативное решение ..

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...