无法使用cbrestore恢复couchbase存储桶

时间:2017-02-06 06:11:50

标签: couchbase database-restore

我正在使用Couchbase Server 4.5.0并尝试将已保存的备份版本恢复到我的本地CB服务器上。我正在使用macOS Sierra Xcode开发工具是最新的 Python v2.7.10

我首先使用此命令创建备份

sudo ./cbbackup HOST:PORT ~/Documents/ -u ‘username’ -p ‘password‘ -b BUCKET_NAME

在此之后,我尝试使用此命令将此备份恢复到本地Couchbase服务器

  sudo ./cbrestore /path/to/backup/2017-01-24T121528Z/2017-01-24T121528Z-full/ http://localhost:8091 -u ‘USERNAME’ -p ‘PASSWORD’ --bucket-source=SOURCE_BUCKET_NAME --bucket-destination=DESTINATION_BUCKET_NAME

但我收到了以下错误。

Exception in thread s0:
Traceback (most recent call last):

File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.py", line 810, in __bootstrap_inner
self.run()

File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/threading.py", line 763, in run
self.__target(*self.__args, **self.__kwargs)

File "/Applications/Couchbase Server.app/Contents/Resources/couchbase-core/lib/python/pump_mc.py", line 91, in run
rv, batch, need_backoff = self.scatter_gather(mconns, batch)

File "/Applications/Couchbase Server.app/Contents/Resources/couchbase-core/lib/python/pump_cb.py", line 72, in scatter_gather
rv, conn = self.find_conn(mconns, vbucket_id, msgs)

File "/Applications/Couchbase Server.app/Contents/Resources/couchbase-core/lib/python/pump_cb.py", line 316, in find_conn
host_port = serverList[vBucketMap[vbucket_id][0]]

IndexError: list index out of range

1 个答案:

答案 0 :(得分:2)

如果你带着你在非osx版本的Couchbase上进行备份并恢复到osx版本,那么你需要使用" -x rehash = 1"与cbrestore。原因是Couchbase的osx版本仅用于开发,并且具有比标准(非osx)Couchbase版本更少的vbuckets。 rehash标志告诉cbrestore处理不同数量的vbuckets。