Database 如何在arangodb中重置root用户的密码?

Database 如何在arangodb中重置root用户的密码?,database,arangodb,Database,Arangodb,我是根和根 我忘了 我现在能做什么 我试图重新安装arangodb,删除所有数据库,但新安装后旧密码仍然存在 service arangodb3 stop /usr/sbin/arangod --server.authentication false 然后 require("@arangodb/users").replace("root", "my-changed-password"); exit service arangodb3 restart // **VERY IMPORTANT ST

我是根和根 我忘了 我现在能做什么

我试图重新安装arangodb,删除所有数据库,但新安装后旧密码仍然存在

service arangodb3 stop
/usr/sbin/arangod --server.authentication false
然后

require("@arangodb/users").replace("root", "my-changed-password");
exit
service arangodb3 restart // **VERY IMPORTANT STEP!!!**
//if you don't restart the server everyone can have access to your database

使用选项
--server.authentication false
启动服务器
arangod
。这将禁用身份验证,以便无需密码即可访问数据库。如果在arangosh或web界面中要求您提供凭据,请使用
root
作为用户名和空白密码。然后,您可以更改用户
root
(在web界面中:用户>root>更改密码)的密码


建议将服务器绑定到
--server.endpointtcp://127.0.0.1:8529
和not
0.0.0
关闭身份验证,这样外部的任何人都不能访问未受保护的数据库,只能访问服务器上的本地数据库(您也可以将其绑定到网络地址,但在这种情况下,请确保端口不对公众开放).

我在Ubuntu上运行ArangoDB3作为服务,但我无法确定如何传递
--server.authentication false
--server.endpointtcp://127.0.0.1:8529
参数到
arangod
过程


我通过更改/etc/arangodb3/arangod.conf中的相同值使其正常工作。

一旦您以禁用的身份验证启动服务器,您就可以更改密码。请将您自己的答案标记为“已接受”;-)这不起作用,因为
arangosh
只是客户端工具,不允许禁用服务器的身份验证。您必须使用
--server.authentication false
启动服务器(arangod)。arangosh不需要这个启动选项,只需连接到服务器的端点并使用一个空白密码即可。但它成功了,我用这种方式更改了密码(全新的),一切正常,但现在我不能再这样做了,因为我有401:Unauthorized怪异…它起作用了,因为我停止了arangod,然后我在没有身份验证的情况下运行arangosh-它在没有身份验证的情况下启动arangod,所以你是对的