3.4.4.5. 更改密码


密码是镜像配置的一部分,因此唯一支持的为数据库用户(MONGODB_USER)和 admin 用户更改密码的方法是分别更改环境变量 MONGODB_PASSWORDMONGODB_ADMIN_PASSWORD

您可以通过在 web 控制台中查看 pod 或部署配置,或通过 CLI 列出环境变量来查看当前的密码:

$ oc set env pod <pod_name> --list

直接在 MongoDB 中更改数据库密码会导致变量中保存的值与实际密码不匹配。每当数据库容器启动时,它会将密码重置至环境变量中存储的值。

要更改这些密码,使用 oc set env 命令为相关的部署配置更新一个或多个所需的环境变量。如果多个部署配置使用这些环境变量,例如从模板创建应用程序时,您必须更新每个部署配置上的变量,以便密码可在所有方面同步。这可以在同一命令中完成:

$ oc set env dc <dc_name> [<dc_name_2> ...] \
  MONGODB_PASSWORD=<new_password> \
  MONGODB_ADMIN_PASSWORD=<new_admin_password>
重要

根据您的应用程序,应用程序的其它部分可能还会有其他密码的环境变量,它们也应该更新以匹配。例如,前端 pod 中可能会有一个更通用的 DATABASE_USER 变量,该变量应该与数据库用户的密码匹配。确保每个应用程序正在同步所有必需的环境变量,否则您的 pod 可能无法在触发时重新部署。

如果您 配置更改触发器,更新环境变量会触发数据库服务器的重新部署。否则,您必须手动启动新的部署以应用密码更改。

要验证新密码是否生效,首先打开正在运行的 MongoDB pod 的远程 shell 会话:

$ oc rsh <pod>

在 bash shell 中验证数据库用户的新密码:

bash-4.2$ mongo -u $MONGODB_USER -p <new_password> $MONGODB_DATABASE --eval "db.version()"

如果正确修改了密码,您应该看到类似如下的输出:

MongoDB shell version: 2.6.9
connecting to: sampledb
2.6.9

验证 admin 用户的新密码:

bash-4.2$ mongo -u admin -p <new_admin_password> admin --eval "db.version()"

如果正确修改了密码,您应该看到类似如下的输出:

MongoDB shell version: 2.6.9
connecting to: admin
2.6.9
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.