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