当前位置: 首页 > 知识库问答 >
问题:

还原到neo4j docker容器

邹英发
2023-03-14

我的服务器上有一个运行neo4j的docker容器,并且设置了自动备份来备份数据库。我试图测试从备份中还原数据库,但我不知道如何在docker容器中还原数据库。

我正在尝试使用Docker exec-t bin/neo4j-admin restore--from=/path/to/backup--database=graph.db--force

我从neo4j文档中读到,您必须关闭neo4j才能恢复备份,但我非常肯定在容器中关闭neo4j将关闭我的容器(容器是使用bin/neo4j控制启动的)。是否有一种方法可以在不关闭neo4j的情况下还原备份,或者可以在不关闭容器的情况下关闭neo4j?或者我必须直接在服务器上运行没有docker的neo4j吗?

目前,唯一可行的解决方案是将备份的graph.db文件夹复制到实际的数据文件夹中,但我认为这不是正确的方法。

共有1个答案

勾喜
2023-03-14

我遇到了同样的问题。最后,我在运行的neo4j容器上使用了neo4j-admin restore,使用了一个新的数据库名称,例如。--database=new.db。然后停止实例,并将neo4j.conf中的dbms.active_database=graph.db更改为dbms.active_database=new.db(仅当配置文件位于已装入的卷中时,此操作才有效。据我所知,没有可用于设置活动数据库的环境变量)。但这不是最方便的解决方案,所以我希望有更好的方法来做到这一点。

 类似资料:
  • 我是docker的新手,我必须在新工作中学习,因此当我键入以下命令时,我应该将sql文件还原到postgres容器中: 之后,我尝试在容器中使用psql转换该文件,但我得到了以下消息: 我怎么才能拿到这个?有人能帮帮我吗?

  • 问题内容: 我正在编写自动化脚本(/ )。他们中的许多人都受益于一些基本的终端GUI。我想我会使用标准序列进行基本绘图。在绘制终端之前,我会这样做,但是这样做会丢失一些终端命令历史记录。我希望能够在程序存在时还原终端命令历史记录。许多终端程序(例如,,,,,,等)这样做。所有这些都还原了终端窗口,从而使用户返回到先前执行过的所有命令历史的调用程序之前的位置。 老实说,我什至不知道从哪里开始搜索。是

  • “还原”功能会先删除数据库已选择的对象,然后根据你的备份创建新的对象。最后,插入数据。 还原一个备份到现有的数据库或模式 在主窗口中,打开一个数据库或模式。 点击“备份”并选择一个现有的备份文件。 在对象工具栏点击“还原备份”。 选择还原选项并点击“还原”。 还原一个备份到新的数据库或模式 创建并打开一个新的数据库或模式。 点击“备份”。 右击对象选项卡的任意位置并选择“还原备份从”。 浏览备份文

  • “还原”功能会先删除数据库已选择的对象,然后根据你的备份创建新的对象。最后,插入数据。 还原一个备份到现有的数据库或模式 在主窗口中,打开一个数据库或模式。 点击“备份”并选择一个现有的备份文件。 在对象工具栏点击 。 选择还原选项并点击“开始”。 还原一个备份到新的数据库或模式 创建并打开一个新的数据库或模式。 点击“备份”。 按住 Control 键并点按对象选项卡的任意位置,然后选择“还原备

  • “还原”功能会先删除数据库已选择的对象,然后根据你的备份创建新的对象。最后,插入数据。 还原一个备份到现有的数据库或模式 在主窗口中,打开一个数据库或模式。 点击“备份”并选择一个现有的备份文件。 在对象工具栏点击“还原备份”。 选择还原选项并点击“开始”。 还原一个备份到新的数据库或模式 创建并打开一个新的数据库或模式。 点击“备份”。 右击对象选项卡的任意位置并选择“还原备份从”。 浏览备份文

  • 我正在尝试使用mysqldump备份一个特定的表。我使用此批处理命令行执行此操作: 我在结果文件中收到的是这样的命令: 问题是,在这个场景中,表将在默认DB中创建,而不一定在我想要的DB中创建。我想要这样的东西: 我如何使用mysqldump来创建它呢?