gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-03 05:57:14 24 4
gpt4 key购买 nike

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

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

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

erlsrv.exe add "Apache CouchDB" -workdir "%COUCH%\bin" -onfail restart_always -args "-sasl errlog_type error -s couch +A 4 +W w" -comment "Apache CouchDB 1.6.1"

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

Windows could not start the Apache CouchDB service on Local Computer.

Error 1067: The process terminated unexpectedly.

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

    erlsrv list

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

erosrv: Unable to remove service (not enough privileges?)

Error: The handle is invalid

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

  • 我在事件日志中找不到可以解释失败原因的事件

如何让 CouchDB 正确安装为服务?

最佳答案

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

好吧,今天在谷歌搜索的某个时刻我遇到了 this answer这给了我一个线索,我应该安装在没有空格的路径中。所以我的解决方案是:

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

erlsrv.exe add "CouchDB" -workdir "C:\CouchDB\bin" -onfail restart_always -args "-sasl errlog_type error -s couch +A 4 +W w" -comment "CouchDB 1.6.1"

该命令最终成功地为 CouchDB 创建了一个正确启动的 Windows 服务。浏览至http://localhost:5984/_utils/现在带我进入 Futon UI。放松一下!

关于windows - CouchDB 不会作为服务安装在 Azure Windows VM 上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39372800/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com