9

也许我对应该如何工作有一个完全的误解,但除了返回错误mongodump之外,我似乎无法让它做任何事情。JavaScript execution failed: SyntaxError: Unexpected identifier

这就是我正在做的事情:

  • 蒙哥正在运行
  • 我想备份一个名为“mydb”的数据库
  • 我在 mongo shell 里面
  • 我尝试了命令mongodump --db mydb并得到上述错误
  • 我都试过了mongodumpmongoexport两者都有同样的问题

我在这里做错了什么?

4

3 回答 3

23

尝试以下它会工作

i.打开终端

ii. 输入 mongodump --collection collectionname --db dbname(不要进入 mongo shell);

iii.如果默认端口不同(27017 除外),则执行以下命令

   mongodump --host mongodb1.example.net --port 37017 --username user --password pass    --out /opt/backup/mongodump-2011-10-24
于 2013-07-25T05:45:21.180 回答
4

mongodump,mongorestore 不是 mongodb shell 的命令。它是单独的 mongodb 实用程序。您可以在 mongodb bin 文件夹下找到它。

通常,您需要将所有 mongodb 实用程序添加到系统路径变量中,然后从命令行或终端中的任何位置轻松备份/恢复数据库。

mongodump --db mydb如果您的数据库在默认端口(27017)上,您的命令看起来不错。

于 2013-07-25T05:45:29.360 回答
3

我在使用 mongo 转储时遇到了问题,我也想将转储存储到S3. 最后我得到了一个bash 脚本来获取 mongo 转储并将其存储到 S3。我mongodump以前是备份的。

mongodump -h $MONGO_HOST:$MONGO_PORT -d $MONGO_DATABASE

其中和$MONGO_HOST分别是和的bash 变量。如果您在数据库上设置了用户名和密码, 您也可以使用命令选项。是获取 mongodb 转储并使用 cron 将其存储到 S3 的脚本。$MONGO_PORT$MONGO_DATABASEhostportdatabase-name--username user --password passmongodump

于 2016-03-13T22:28:22.370 回答