首页 > 解决方案 > 无法运行 arangodump 时如何在 ArangoDB 中复制数据库

问题描述

我想克隆/复制我在 ArangoDB 中的数据库。这个https://stackoverflow.com/a/27827457是我看到的一种方法,但它对我不起作用,因为我无法运行 arangodump 或任何其他 Arango 命令(如 arangosh、arangorestore 等.)。

另外,为什么我不能运行 arangodump?这个答案https://stackoverflow.com/a/63074313说“打开终端并使用 cd 转到存储 arangoimport.exe 的目录”,但我在任何地方都找不到 arangoimport.exe。

我已经查看了 ArangoDB 网站,但找不到任何信息。

标签: databasearangodb

解决方案


如果您无法访问服务器arangodumparangorestore服务器,那么调用它们的最简单方法是通过 docker 并通过添加--server.endpoint选项访问您的服务器,您需要将一些卷/目录映射到容器以保留转储的数据,以便将它们恢复到其他容器,像这样:

#dump data to /tmp/dump at your host
docker run -it --rm -v /tmp/dump:/dump arangodb/arangodb:3.7.6 arangodump --server.endpoint http+tcp://192.168.1.2:8529
#restore data from /tmp/dump at your host
docker run -it --rm -v /tmp/dump:/dump arangodb/arangodb:3.7.6 arangorestore --server.endpoint http+tcp://192.168.1.2:8529

所有可用选项的文档,包括示例在此处用于 arangodump此处用于 arangorestore

另一种选择是使用ArangoDB REST API编写自己的转储和恢复实现,但与安装 docker 然后运行提供的转储和恢复工具相比,这是一项繁重且容易出错的任务


推荐阅读