【问题标题】:Recover Couchbase password without knowing it在不知情的情况下恢复 Couchbase 密码
【发布时间】:2013-04-22 13:21:15
【问题描述】:

我正在使用 ma​​c,下载了 mac 社区版。启动应用程序,并打开管理控制台。到目前为止一切顺利,直到我退出。现在我无法再次登录,因为我一开始就不必设置密码。它可能是在很久以前的版本中设置的,但我不确定。

重新安装它不起作用。我一直被弹回到登录屏幕。

按照其他帖子和在线帮助中的建议执行以下命令导致erlang崩溃

erl -noinput -eval 'case file:read_file("/Users/testuser/Couchbase Server.app/Contents/Resources/couchbase-core/var/lib/couchbase/config/config.dat") of {ok, B} -> io:format("~p~n", [binary_to_term(B)]) end.' -run init stop | grep cred

Crash dump was written to: erl_crash.dump
init terminating in do_boot ()

欢迎提出建议

我一直在尝试在 couchdb ini 文件的管理员部分添加一个新用户,但它们似乎没有被占用(密码没有得到散列,当读取这些文件时应该这样做)

【问题讨论】:

    标签: macos couchbase password-recovery


    【解决方案1】:

    您可以运行一个cbreset_password 脚本,位于您的CouchBase 服务器应用程序的/Contents/Resources/couchbase-core/bin 文件夹中

    所以对我来说是/Applications/Couchbase Server.app/Contents/Resources/couchbase-core/bin

    只需运行它,您就可以重置Administrator 帐户的密码

    【讨论】:

    • 如果有人收到“获取节点连接信息失败”错误。尝试将其作为 sudo 运行。
    • cbreset_password 脚本已被删除。使用您的命令转到您的 Couchbase bin 文件夹。对于 mac,这是 /Applications/Couchbase Server.app/Contents/Resources/couchbase-core/bin 在那个文件夹中,执行这个:./couchbase-cli reset-admin-password --new-password test123。您的新密码将更改为test123。这是详细指南:docs.couchbase.com/server/4.6/cli/cbcli/…
    【解决方案2】:

    密码以纯文本形式保存在位于 \var\lib\couchbase 文件夹中的 config.dat 二进制文件中。

    您可以搜索字符串“用户名”,然后在它旁边您会看到“密码”字段和密码的纯文本值。

    我认为有一个开放的缺陷是有更好的密码存储机制。

    可以使用 couchbase-cli 工具更改密码。

    shell> ./couchbase-cli cluster-init -c 127.0.0.1:8091 --user=[CURRENT_USERNAME] --password=[CURRENT_PASSWORD] --cluster-init-username=[NEW_USERNAME] --cluster-init-password=[NEW_PASSWORD]

    【讨论】:

    • 我忘记了 id 和密码,我该怎么办?
    【解决方案3】:

    在 mac 上,您可以执行以下步骤

    sudo ln -s $CB_HOME/Couchbase\ Server.app/Contents/Resources/couchbase-core/lib/ /lib
    cd "$CB_HOME/Couchbase Server.app/Contents/Resources/couchbase-core/bin"
    ./erl -noinput -eval 'case file:read_file("[PATH TO DATA]/Library/Application Support/Couchbase/var/lib/couchbase/config/config.dat") of {ok, B} -> io:format("~p~n", [binary_to_term(B)]) end.' -run init stop | grep creds
    

    CB_HOME 指向你的 Couchbase 安装目录

    【讨论】:

    • [PATH TO DATA]/Library/Application Support/Couchbase 应该是什么?因为我没有(我认为)。我知道 config.dat 文件的路径,但它直接在我的安装文件夹中,而不是在另一个根目录下。但即使使用该路径,我也会遇到 erlang 崩溃。崩溃转储被写入:erl_crash.dump init 终止于 do_boot ()
    • 用你的主路径替换[PATH TO DATA] ~ IE: /Users/3xil3
    【解决方案4】:

    如果不清楚,因为在上一个答案中没有完全解释,我还不能发表评论。 cbreset_password 脚本是一个Python 脚本

    对于 Mac OS,请确保您已安装 Python。此外,还需要 2 条信息,即您尝试重置的 Couchbase 实例的 IP 地址和端口号。因此,对于本地安装,标准 Couchbase 端口为 8091,命令如下所示:

    python /Applications/Couchbase\ Server.app/Contents/Resources/couchbase-core/bin/cbreset_password 127.0.0.1:8091
    

    【讨论】:

      猜你喜欢
      • 2023-03-24
      • 2021-12-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-14
      • 1970-01-01
      • 2017-02-05
      • 1970-01-01
      相关资源
      最近更新 更多