我觉得我在ArangoDB升级过程中做错了什么。升级的最终结果是我的数据库存在,我的用户存在,我的集合存在,但是我的集合中没有文档。显然这是个问题。我在Windows2.3.1Windows2.3.4和2.3.4Windows2.4的基础上升级了两次这个问题。我在这两种情况下都采用了相同的程序:
升级输出在我看来是正确的,它找到旧的数据库并对它们进行升级,这从它们的存在以及集合中可以看出。但如前所述,所有的收藏品都是空的。谢天谢地,这是在一个开发环境,但我担心升级我的生产环境。我是做错什么了还是这是个虫子?
发布于 2015-02-19 19:57:21
事实证明,这个问题与复制有关。我将复制生产数据库中的数据,以便在开发过程中使用。然后,当我升级或停止dev db上的Arango服务时,所有的文档都会消失。但是,当我使用arango备份和还原来复制生产DB数据时,一切都如愿以偿。最新版本的Arango应该已经解决了这个问题,但我还没有时间来测试它。
发布于 2015-01-21 15:55:55
我尝试使用x64 Arango包通过步骤2.3.5到2.4.1来再现这个过程。
我所做的:
首先,使用程序目录之外的自己的数据库目录从shell中运行arangod:
bin\arangod.exe c:\ee --console创建一个集合,插入数据(就像js/server/tests/aql-optimizer-rule-use-index-for-sort.js setUp()-function做的那样),然后安装新版本,运行
bin\arangod.exe c:\ee --upgrade然后
bin\arangod.exe c:\ee --console
AQL_EXECUTE("for u in UnitTestsAqlOptimizeruse_index_for_sort_XX return u")这给了我所有的100个文件,我把它们放进了收藏品里。
接下来,我尝试使用Porgram Files文件夹中的var\lib文件夹运行arangod服务。我使用arangosh连接,再次将文档插入到集合中,并使用
db._query("for u in UnitTestsAqlOptimizeruse_index_for_sort_XX return u").toArray();所有的数据都在那里。
然后停止该服务,安装2.4.1,停止服务,并使用资源管理器复制ArangoDB 2.4.1\var\lib目录,运行arangod升级成功地重新启动服务,并使用arangosh再次成功地重新验证集合及其文档。
因此,由于这看起来与您所做的类似,您是否可以尝试使用最小的数据集来复制它,并将您的var\lib目录发送给我们?
https://stackoverflow.com/questions/28069892
复制相似问题