如何连接远程CouchDB数据库

4

我是couchdb的新手。我正在服务器上运行一个Python代码。此代码将数据存储在couchdb数据库中。我希望将数据库存储在我的电脑上。我的代码非常简单,如下所示:

server = Server('http://125.151.58.68:5984/')
db = server['dnsrecords']

当我运行这段代码时,出现了以下错误信息:
File "dblookup.py", line 12, in main
    db = server['dnsrecords']
  File "/usr/local/lib/python2.6/dist-packages/CouchDB-0.8-py2.6.egg/couchdb/client.py", line 137, in __getitem__
  File "/usr/local/lib/python2.6/dist-packages/CouchDB-0.8-py2.6.egg/couchdb/http.py", line 377, in head
  File "/usr/local/lib/python2.6/dist-packages/CouchDB-0.8-py2.6.egg/couchdb/http.py", line 419, in _request
  File "/usr/local/lib/python2.6/dist-packages/CouchDB-0.8-py2.6.egg/couchdb/http.py", line 239, in request
  File "/usr/local/lib/python2.6/dist-packages/CouchDB-0.8-py2.6.egg/couchdb/http.py", line 205, in _try_request_with_retries

socket.error: [Errno 111] Connection refused

你需要运行couchdb服务器吗? - mhawke
1
默认情况下,CouchDB仅在127.0.0.1上监听。 - Marcello Nuccio
2个回答

5
运行 couchdb -c 命令以查看你的配置文件所在位置,然后编辑 local.ini 配置文件并取消注释并将 bind_address 值更改为 0.0.0.0,这样它就绑定到了所有的IP地址。

我已经按照您的建议进行了操作。然后,我在一台机器上尝试使用以下命令:"curl http:// mycomputeripaddress:5984/" 结果显示:"curl: (7) couldn't connect to host"。感谢您的建议,以及其他任何建议。 - Shnkc
刚刚意识到我漏掉了重启CouchDB服务器的步骤,具体操作取决于您的操作系统。如果您使用Linux,则可能是/etc/init.d/couchdb restart,如果您使用OSX并使用launchd,则可能是killall -f beam.smp - smathy
1
另外,CouchDB v2.* 要求您在实际使用之前设置集群/节点,即使您希望进行单节点配置。 - Rui Pimentel

0
在我的情况下,使用版本3.1.1,修改local.ini文件和default.ini文件没有任何效果。我发现一个名为10-bind-address.ini的文件在文件夹/opt/couchdb/etc/default.d中,将127.0.0.1更改为0.0.0.0,然后它就可以工作了。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接