首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CouchDB:无法正常启动CouchDB

CouchDB:无法正常启动CouchDB
EN

Stack Overflow用户
提问于 2014-12-18 12:45:11
回答 5查看 2.9K关注 0票数 2

我是couchDB的新手。最近,我在这里给出了一个快速的安装说明:

代码语言:javascript
复制
sudo apt-get update -y

sudo apt-get install g++ -y
sudo apt-get install erlang-base erlang-dev erlang-eunit erlang-nox -y
sudo apt-get install libmozjs185-dev libicu-dev libcurl4-gnutls-dev libtool -y

curl -O http://apache.mirrors.tds.net/couchdb/source/1.5.1/apache-couchdb-1.5.1.tar.gz
tar -zxvf apache-couchdb-1.5.1.tar.gz 
cd apache-couchdb-1.5.1

./configure
make
sudo make install

sudo adduser --disabled-login --disabled-password --no-create-home couchdb

sudo chown -R couchdb:couchdb /usr/local/var/log/couchdb
sudo chown -R couchdb:couchdb /usr/local/var/lib/couchdb
sudo chown -R couchdb:couchdb /usr/local/var/run/couchdb

sudo ln -s /usr/local/etc/logrotate.d/couchdb /etc/logrotate.d/couchdb
sudo ln -s /usr/local/etc/init.d/couchdb  /etc/init.d

sudo update-rc.d couchdb defaults


1. modify /usr/local/etc/couchdb/local.ini
2. change bindAddress to 0.0.0.0
3. reboot
4. remember to go into the config settings and secure server
5. remember to turn on auto compaction

除了第四步和第五步之外,我完全遵循了指南,因为我不知道怎么做。当我跑的时候:

代码语言:javascript
复制
couchdb

我在终端收到以下消息(我使用的是Ubuntu 14.04 LTS):

代码语言:javascript
复制
Apache CouchDB 1.5.1 (LogLevel=info) is starting.
Error opening log file /usr/local/var/log/couchdb/couch.log: permission denied{"init terminating in do_boot",{{badmatch,{error,{bad_return,{{couch_app,start,[normal,["/usr/local/etc/couchdb/default.ini","/usr/local/etc/couchdb/local.ini"]]},{'EXIT',{{badmatch,{error,{shutdown,{failed_to_start_child,couch_primary_services,{shutdown,{failed_to_start_child,couch_log,{error,"permission denied","/usr/local/var/log/couchdb/couch.log"}}}}}}},[{couch_server_sup,start_server,1,[{file,"couch_server_sup.erl"},{line,98}]},{application_master,start_it_old,4,[{file,"application_master.erl"},{line,269}]}]}}}}}},[{couch,start,0,[{file,"couch.erl"},{line,18}]},{init,start_it,1,[]},{init,start_em,1,[]}]}}
Crash dump was written to: erl_crash.dump
init terminating in do_boot ()

有没有人可以帮我解决这个问题,并提出一些解决方案?非常感谢。

EN

回答 5

Stack Overflow用户

发布于 2014-12-19 07:18:59

您可能需要以couchdb用户身份启动couchdb进程,并使用su couchdb -c ./couchdb (假设当前目录包含可执行文件)-仔细检查系统的su命令选项。

此外,检查/usr/local/var/log/couchdb/couch.log上的权限-确保couchdb用户可以写入该权限。

票数 1
EN

Stack Overflow用户

发布于 2018-06-30 04:07:31

我想在这里记录一下我是如何在我的环境中修复这个问题的。在我的例子中,/opt/couchdb/data文件夹是指向/var/lib/couchdb的符号链接。无论我尝试什么,我都会在启动时收到权限被拒绝的错误,即使所有的文件似乎都归用户couchdb所有。

我最终发现/var/lib上没有设置"execute“权限。如果没有此权限,symlink将无法工作。如果遇到这个问题,可以像我一样设置chmod -R a+x /var,以防止这种情况发生。

票数 1
EN

Stack Overflow用户

发布于 2015-02-03 18:57:01

尽管在CentOS上,使用service couchdb [start|status|stop|restart]可以避免这个“问题”。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27539397

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档