2013-05-23 1 views
1

Есть ли простой способ запускать эти команды с помощью драйвера C#? Единственная документация, которую я нашел, включает запуск EXE как процесса и т. Д., Который кажется немного тяжелым.Запуск MongoDump/MongoRestore в C#

Единственный связанный с этим вопрос, который я нашел, остался без ответа ... я пропустил что-то принципиальное здесь?

http://grokbase.com/t/gg/mongodb-user/127zntq9pr/mongodump-in-c

+0

Не могли бы вы просто использовать [db.copyDatabase()] (http://docs.mongodb.org/manual/reference/method/db.copyDatabase/)? Наверное, я спрашиваю, какова конечная цель для приложения, вам нужно фактически получить дамп и сделать что-то для него, а затем восстановить его, или просто хотите скопировать базу данных? – Jesta

+0

Нет, пытаясь создать дамп в файл для резервного копирования, который затем отправляется на Amazon S3 –

+1

mongodump и mongorestore - это приложения, а не команды MongoDB, поэтому вам придется запускать исполняемый файл. Если вам интересно, код C++ для сброса базы данных находится здесь: https://github.com/mongodb/mongo/blob/master/src/mongo/tools/dump.cpp#L175 –

ответ

2

mongodump и mongorestore является приложение, не MongoDB команд, поэтому вам придется запустить исполняемый файл.

Если вы заинтересованы, код C++ для сброса базы данных - located here.

1

К сожалению, нет. Я думаю, что более простой способ сделать регулярное резервное копирование вашего mongodb - написать сценарий резервного копирования и создать задачу в планировщике. хороший ответ, как это сделать, вы можете найти здесь: MongoDB script to backup replication set locally to a Windows Server Если есть более простые решения, я буду рад узнать о них - эта проблема актуальна и для меня. :)