2013-05-30 38 views
2

我对Couchbase(和nosql)比较新,所以也许我错过了一些明显的东西,但是我希望能够做的是自动构建一个新的环境为尽可能多。在开发沙箱之间迁移/同步couchbase桶

使用MySql,我可以比较容易地创建.sql文件,并使用它们创建表结构以及执行相应的插入操作以添加我想要加载到新环境中的所有基础引用数据。在Couchbase中做类似的最佳方式是什么?是否有任何工具(开源或其他)可能对此有帮助?

我最初的想法是使用客户端API将所有存储区数据“获取”为.JSON文件,然后在另一端使用另一个脚本将其“放回”存储区。不确定这是移动数据的最优雅方式,但它对于移动“模式”也没有任何帮助。是的,我知道模式可能在nosql中被看作是一个肮脏的词,但我的意思是理想情况下我想在源环境上使用反射,并识别所有桶和视图,然后能够在目标环境中重新创建这些。

+0

也许你可以使用cb_transfer?请参阅http://www.couchbase.com/docs/couchbase-manual-2.0/couchbase-admin-cmdline-cbtransfer.html – Daniel

回答

3

您可以通过CLI使用内置的Couchbase'cbbackup'和'cbrestore'命令。

他们将数据和视图等复制到指定的env。

的文档可以在这里找到:

http://www.couchbase.com/docs/couchbase-manual-2.0/couchbase-admin-cmdline-cbbackup.html

我希望这有助于!

罗宾J.

+0

似乎是一种明智的方法。我现在很挣扎,因为我无法让命令停止给我一个'[Errno 61]连接拒绝'错误。我检查了用户名和密码与Web界面上的相同。有任何想法吗? – ken

+0

顺便说一句,我的连接错误只是由于一个头颅的错误...我使用了错误的端口进行CLI调用。哎呀。 – ken

1

所以除了你也可以根据音量的单一方向使用XDCR(跨数据中心复制)(从生产到cbbackup和cbtransfer(http://www.couchbase.com/docs/couchbase-manual-2.0/couchbase-admin-cmdline-cbtransfer.html)工具开发环境)。

http://www.couchbase.com/docs/couchbase-manual-2.0/couchbase-admin-tasks-xdcr.html

+0

我想知道如果我应该看看这个选项。现在我要坚持cbbackup/cbtransfer,但我会在6个月内提醒你重新采用这种方法。 – ken

相关问题