我尝试将数据库从本地CouchDB安装复制到IBM Cloudant。我使用curl,就像这样 -
curl -X POST 'http://10.88.201.198:5984/_replicate'
-d '{
"source":"http://10.88.201.198:5984/temperature-db",
"target":"username:password@username.cloudant.com/temperature-db"
}'
-H "Content-Type: application/json"
-v
尝试超时,我收到以下消息 -
upload completely sent off: 255 out of 255 bytes
< HTTP/1.1 500 Internal Server Error
* Server CouchDB/1.6.1 (Erlang OTP/R16B03) is not blacklisted
< Server: CouchDB/1.6.1 (Erlang OTP/R16B03)
< Date: Wed, 27 Apr 2016 09:18:34 GMT
< Content-Type: text/plain; charset=utf-8
< Content-Length: 20
< Cache-Control: must-revalidate
< Proxy-Connection: Keep-Alive
< Connection: Keep-Alive
<
{"error":"timeout"}
我该如何解决这个问题?
答案 0 :(得分:0)
您的复制可能需要一段时间才能完成。要解决此问题,您应该使用_replicator
数据库,您可以随意监控。 cloudant网站上有关于如何使用_replicator
数据库设置复制的文档。
答案 1 :(得分:0)
您需要添加一些有权复制和目标的用户的用户和密码错过“https://”并使用localhost或0.0.0.0
curl -X POST 'http://username:password@localhost:5984/_replicate'
-d '{
"source":"http://username:password@localhost:5984/temperature-db",
"target":"https://username:password@username.cloudant.com/temperature-db"
}'
-H "Content-Type: application/json"
-v
这可能有帮助