Както се предлага в приетия отговор, трябва вашият локален сървър да се изпълнява като зададена реплика, за да можете да извършвате транзакции, за разлика от самостоятелния сървър.
Въпреки това, в допълнение към предложеното решение, можете лесно да конвертирате вашата самостоятелна локална база данни в набор от реплики без да използвате инструмент на трета страна , като следвате инструкциите в документацията на MongoDB , обобщени както следва:
- Спрете вашето самостоятелно копие на mongod и го рестартирайте с
replSet
аргумент.
mongod --port 27017 --dbpath /srv/mongodb/db0 --replSet rs0 --bind_ip localhost
- Свържете се с вашето копие с
mongo
обвивка и инициирайте новия комплект реплики.
rs.initiate()
Сега трябва да имате набор от реплики вместо самостоятелен mongodb сървър, където можете да извършвате транзакции във вашата локална среда, за да актуализирате множество документи наведнъж!
Не забравяйте за включване на replSet
аргумент всеки път, когато искате да стартирате сървъра, в противен случай той ще бъде стартиран като самостоятелен. Просто използвам същата команда като в стъпка 1, за да я стартирам отново.
Като алтернатива можете да разположите нов комплект реплики от нулата за среда за тестване, като следвате тези други инструкции в Документация на MongoDB.