繁体   English   中英

CouchDB将不会作为服务安装在Azure Windows VM上

[英]CouchDB will not install as a service on Azure Windows VM

我以前使用从http://couchdb.apache.org/下载的安装程序setup-couchdb-1.6.1_R16B02.exe在我的Azure Windows VM(经典)上安装了CouchDB,没有任何问题。

今天,我已经卸载了现有的CouchDB安装和服务,打算从头开始再次安装它。 不幸的是,每当我现在运行安装程序时,它都无法创建Windows服务。 更多信息:

  • 我以管理员身份运行安装程序和命令工具
  • 我已经使用SC命令并通过编辑注册表删除了现有服务(尝试了两种方法)
  • 我已尝试通过运行以下命令使用安装程序安装CouchDB之后创建服务:

erlsrv.exe添加“ Apache CouchDB” -workdir“%COUCH%\\ bin” -onfail restart_always -args“ -sasl errlog_type错误-s沙发+ A 4 + W w”-注释“ Apache CouchDB 1.6.1”

这似乎创建了一个服务(您可以在Windows Services中看到),但是任何尝试启动该服务的操作都会导致错误:

Windows无法在本地计算机上启动Apache CouchDB服务。

错误1067:该进程意外终止。

  • 我尝试卸载CouchDB应用程序,重新启动服务器,然后再次使用安装程序重新安装CouchDB。 不开心 然后尝试运行命令来创建服务。 仍然没有喜悦。
  • 当我使用命令

    erlsrv列表

我可以看到我过去尝试添加的服务。 尝试删除它们会导致错误消息:

erosrv:无法删除服务(权限不足?)

错误:句柄无效

(我正在使用erlsrv list命令提供的句柄)

  • 在事件日志中没有事件,我可以找到它来解释为什么失败

如何获得CouchDB作为服务正确安装?

TL; DR:重新安装在没有空格的目录路径中,然后手动创建服务。

好的,所以在今天的Google搜索中的某个时刻,我遇到了这个答案 ,这为我提供了我应该安装在没有空格的路径中的线索。 所以我的解决方案是:

  • 通过Windows控制面板卸载CouchDB应用程序。
  • 在其余的CouchDB安装中运行uninstall.exe,然后删除这些目录。
  • 使用SC命令删除现有服务。
  • 使用安装程序将其重新安装到C:\\ CouchDB中(注意:无空格!)。 选择作为服务安装的选项(即使效果不佳)。
  • 运行命令以手动创建服务。 请注意,我没有使用%COUCH%变量,因为它目前在我的系统上似乎不存在:

erlsrv.exe添加“ CouchDB” -workdir“ C:\\ CouchDB \\ bin” -onfail restart_always -args“ -sasl errlog_type错误-s沙发+ A 4 + W w”-注释“ CouchDB 1.6.1”

该命令最终设法为正确启动的CouchDB创建了Windows服务。 浏览到http:// localhost:5984 / _utils /现在将我带到Futon UI。 放松一下!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM