2016-08-15 166 views
0

在Windows上运行MongoDB服务器。 我有一个很大的Db,有备份等,但是因为我迟钝,而不是使用命令行管理程序删除一些条目,我首先将它们复制到另一个目录,然后通过资源管理器删除它们。当然,没有任何工作,因为MongoDb没有错过一些条目,甚至没有开始正常工作,在日志(找不到文件)中出现I/O错误。所以,我将文件复制到属于他们的位置,再次通过资源管理器,重试它,现在我仍然在日志中获得ErrorMsg,即某个文件丢失。奇怪的是,该文件从来没有存在于这些文件夹中,我删除了... 那么现在,至少我仍然有一个使用mongodump做的备份转储,但我无法恢复转储,因为要恢复,我必须启动MongoDbServer,这将不会启动,因为我的数据库条目的一些文件夹丢失(该服务将启动,但我不能访问服务器实例),并包括丢失的文件夹,我必须使用mongorestore ...一些不好的文件夹循环,我去那里... 因此,我创建了一个新的数据库,并希望恢复我在旧数据库中的旧转储,但现在当使用mongorestore时,我得到一个无效的头错误 - gzip --archive -d test“dump_path “MongoDb恢复损坏的数据库

任何帮助,如何解决我的问题?

回答

0

解决它......我创建了一个新的数据库,开始了mongodbserver但这一次,而不是写mongorestore --gzip --archive名dumppath,其中有太多的参数错误退出,你必须键入: mongorestore --gzip --archive =“文件名”dumppath,然后一切按照预期的方式工作...