Kiedy mówisz 'from node.js'
Zakładam, że oznaczać wywołanie polecenia mongodump/mongostore
ze swojego node.js aplikacji.
Od mongodump
i mongostore
są aplikacjami wiersza poleceń. Jedynym sposobem na "wykonanie ich" z poziomu node.js
jest skorzystanie z rozwiązania, które już tu znalazłeś.
To znaczy, używając child_process.spawn
, ponieważ nikt jeszcze nie utworzył dla nich wiązania node.js.
Nie użyłbym go jako "ostatniej szansy", ponieważ spełnia on dokładnie to, czego potrzebujesz. Jednak powinienem wspomnieć o tym, że możesz sam bezpiecznie wykonać kopię zapasową i przywracając dane mongodb
za pomocą node.js driver
. To znaczy, iteruj po kolekcjach i przechowuj je, wykonaj odwrotną procedurę, aby przywrócić kopię zapasową.
Zdecydowanie sugeruję odrzucić to. Problem z podejściem sugerowanym w pytaniu, z którym się łączysz, jest stosunkowo niewielki. Widziałem, jak był używany (no, coś podobnego) w produkcji samemu i nie było problemów.
"Powinienem jednak wspomnieć, że za pomocą sterownika node.js można w prosty sposób zaimplementować tworzenie kopii zapasowych i przywracanie danych Mongodb. Zakładam, że masz na myśli bez mongobacku/maongorestore. Jak to? Masz szybki przykład/link? Dzięki. – lostintranslation
Oh ok Widzę, co mówisz. Dzięki za pomoc. – lostintranslation