- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
有人成功地从 stdin 恢复了 mongodump 吗?
我使用引用命令生成了备份文件:
mongodump --archive > file
但引用文献从未解释存档的格式或恢复方式。有人说你必须从标准输入注入(inject)它,但他们仍然是个谜,因为没有证据表明它实际上是可能的。
事实上,我做了以下尝试,但没有成功:
cat file | mongorestore
mongorestore -vvvvv --archive < file
mongorestore -vvvvv --archive=file
所有这些命令都以相同的错误结束:
Failed: stream or file does not appear to be a mongodump archive
有关信息,我设法恢复了以经典方式生成的存档。
为什么我需要使用 --archive to stdout?
我的 mongodb 在一个 docker 中。
我现在使用的选项是在 docker 内部 创建备份文件,我然后使用 docker cp 命令将其复制到主机,所以我 使用所需空间的两倍(在容器内移除之前)。
不幸的是,docker 没有从主机安装,我不能(还)重新启动它来添加选项。我正在寻找一个快速的选择。
最佳答案
所以根据MongoDB官方的mongodump doc和 mongorestore doc :
To output the dump to the standard output stream in order to pipe to another process, run mongodump with the archive option but omit the filename. To restore from the standard input, run mongorestore with the --archive option but omit the filename.
所以实际上你不必先 mongodump 到文件然后从中读取,只需简单地像这样通过管道传输 mongodump 和 mongorestore:
mongodump --archive | mongorestore --archive --drop
但是,您可能会像我一样遇到另一个问题https://stackoverflow.com/a/56550768/3785901 .
在我的例子中,我必须使用 --nsFrom 和 --nsTo 而不是 --db,否则 mongorestore 无法按预期工作。所以我成功执行到 mongodump/mongorestore 的最终命令是:
mongodump --host HOST:PORT --db SOURCE_DB --username USERNAME --password PASSWORD --archive | mongorestore --host HOST:PORT --nsFrom 'SOURCE_DB.*' --nsTo 'TARGET_DB.*' --username USERNAME --password PASSWORD --archive --drop
祝你好运。
关于mongodb - 来自标准输入的 Mongorestore,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52478343/
有人成功地从 stdin 恢复了 mongodump 吗? 我使用引用命令生成了备份文件: mongodump --archive > file 但引用文献从未解释存档的格式或恢复方式。有人说你必须从
我正在恢复一个大型 mongo 数据库 (90 GB)。我正在使用 mongorestore,它在大约 70..90% 的恢复过程中默默地失败了。有没有办法在启动 mongorestore 时跳过转储
嗨,当我做一个 mongorestore 来转储我的数据库时 ok 如果我有: > show dbs local (empty) test 0.203125GB 它变成了: > show d
我在生产环境中运行了 1.8.2 版的 mongodb,为此运行了一个 cron 作业以进行数据库转储。我刚刚将我的 ubuntu 升级到 12.04。现在我无法恢复任何数据库/集合。这是给予 db.
我正在尝试使用以下方法在 mongodb 中导入一些数据: mongoimport -d blog -c posts < posts.json 但是开始出现这个错误: 2015-11-06T11:3
我已经转储了一个在默认端口上运行的独立 mongo 数据库(14Gb 大),如下所示: mongodump --username --password --db 我正在尝试使用以下内容将其恢复到
我已经在 3 分片集群上针对大小为 600GB 的数据库执行了“mongodump”,并且 block 均匀分布在所有 3 个分片上。 我的 mongodump 命令是这样的: mongodump -
我一直在努力寻找一种方法来做到这一点,但没有成功,而且我觉得没有一种简单的方法可以做我想做的事。 我一直在使用 mongodump | mongorestore 进行测试作为一种避免创建实际存储的文件
我正在尝试使用 gzip 文件中的 mongorestore 恢复数据库。数据库大小约为 89MB,gzip 文件约为 4.4MB。 但是,还原无限期挂起,没有错误消息。我应该如何解决这个问题? 我运
我在以下路径中有很多 bson 文件: c:/mongodb/bin/dump/Sid 如果我运行命令: > mongorestore --db Sid --drop dump/Sid 我收到以下错误
我已经开始了 M101 MongoDB 在线类(class)。我只是关注 this video到视频的 1:45 分钟。 restoremongo 调用返回 mongorestore: command
mongorestore 有没有办法替换数据库中现有的记录,而不是跳过它,这是默认行为? 我目前使用的是最新的 2.4.x 版本的 mongodb。 最佳答案 您可以使用 the --drop par
我需要将使用 mongodump 生成的集合导入(恢复)到现有数据库中,并且我希望将记录合并到现有集合中。 mongorestore 是合并同一个集合中的记录还是会在恢复记录之前删除现有集合? 最佳答
在 MongoDB 中,是否可以转储数据库并将内容恢复到不同的数据库?比如这样: mongodump --db db1 --out dumpdir mongorestore --db db2 --di
我正在使用 mongorestore 从 mongodump 恢复数据库,这需要几个小时。大部分时间都花在了对大型集合建立索引上。 我可以使用 mongodump 或 mongorestore 选项来
我使用这个 cmd 将 mongodb 恢复到 mLab 上的远程数据库 $ ./mongorestore -h ds*****.mlab.com:**** -u -p -d loc8r 但我收到
我知道这是一项基本的安全措施,但我无法使其与我的 mongodb 安装一起使用。每次我运行命令时: mongorestore dump_folder -u "username" -p "passwor
我这样做是为了测试 mongorestore 实用程序 以下是我的测试流程: mongo 127.0.0.1/mytest -u alex -p alex > db.createCollection(
我有一个对象数组。 const arr = [ { name: 'somename', age: 25, }, { name: 'othername', a
我注意到,当通过 mongos 使用 mongorestore 将数据恢复到分片集群时,所有记录最初都保存到主分片(集合的),只有平衡器进程移动这些 block ,这是一个相对缓慢的过程,所以在恢复后
我是一名优秀的程序员,十分优秀!