如何更改 h2 数据库密码?
Posted
技术标签:
【中文标题】如何更改 h2 数据库密码?【英文标题】:How to change h2 db password? 【发布时间】:2018-12-24 03:25:12 【问题描述】:我无法更改 H2 db 的密码。我试着用命令来做:
chpasswd.sh --db-url "jdbc:h2:repository/database/WSO2CARBON_DB" --db-driver org.h2.Driver --db-username ... --db-password ... --username ... --new-password ...
当我启动命令时,它成功结束。 但密码没有改变。 IS 不是以新密码开头,而是以旧密码开头。 如何修改H2 db的密码?
【问题讨论】:
【参考方案1】:WSO2产品提供的“chpasswd.sh”脚本是修改产品的管理员密码,与h2数据库密码无关。
如果您尝试更改 H2 数据库密码,则必须登录到 h2 控制台并更新 db 用户密码。以下是步骤。
您可以下载 h2 控制台表单[1]。之后解压缩并转到 h2/bin 文件夹。然后使用以下命令启动 h2 控制台。
sh h2.sh
现在您可以在浏览器 (http://localhost:8082) 中访问 h2 控制台,并使用 db 路径和当前凭据访问 db。然后运行以下 SQL 来更新数据库密码。
ALTER USER wso2carbon SET PASSWORD 'NEW_PASSWORD'
此更改后,由于数据库密码更新,WSO2 产品将无法启动。您必须在“repository/conf/datasources/master-datasources.xml”文件中更新数据库密码。
另外,值得一提的是,不建议将 H2 用于生产中的 WSO2 产品。
[1]http://www.h2database.com/h2-2017-06-10.zip
【讨论】:
我尝试更改不是 WSO2 IS 的管理员用户密码,我尝试更改 H2 数据库密码 chpasswd 脚本是修改管理员密码,与h2数据库密码无关。要更改 H2 数据库密码,您必须登录到 h2 控制台并尝试运行 alter user set password 选项。 h2database.com/html/grammar.html#alter_user_set_password 更新了 h2 db 密码更改要求的答案。 我在 IS 和 API-M 服务器上更改了密码。我在 carbon.xml 文件中取消了您可以使用以下命令更改H2数据库的管理员用户密码。
sh chpasswd.sh --db-url "jdbc:h2:repository/database/WSO2CARBON_DB" --db-driver "org.h2.Driver" --db-username "wso2carbon" --db-password "wso2carbon" --username "admin" --new-password "admin123"
sh chpasswd.sh --db-url "jdbc:h2:repository/database/WSO2CARBON_DB" --username "admin" --new-password "admin123"
如果您仍然遇到同样的问题,请提及您尝试更改管理员密码的 WSO2 产品和产品版本。
【讨论】:
我使用了这个命令,它没有帮助。正如我在启动命令时所写的那样,它成功结束。然后我在 repository/conf/security/master-datasource.xml 中更改 WSO2_CARBON_DB、WSOAM_DB、WSO2_MB_STORE_DB 的密码。 IS 以错误开头:用户名或密码错误。 IS 不是以新密码开头,而是以旧密码开头。我使用的是 5.6.0 我没有 chpasswd.sh ,我猜那是 WSO 特有的,而不是一般的 H【参考方案3】:我假设您正在关注此document。请注意,这仅在您不知道管理员密码并需要重置时使用。如果你知道当前密码,你可以关注this。
默认情况下,WSO2 IS 带有一个 LDAP 用户存储。您可以通过检查 [IS_HOME]/repository/conf/user-mgt.xml 中的“UserStoreManager”来检查活动用户存储。更多信息here。
如果是JDBC,你必须从[IS_HOME]/repository/conf/datasources/master-datasources.xml中通过检查user-mgt.xml中的dataSource名称找到相关的DB,并按照@987654324中的步骤操作@。
如果是 LDAP,您可能需要通过 Apache Directory Studio 等工具连接到该 ldap 来更改密码。
【讨论】:
是的,我尝试使用官方文档更改密码和yenlo指南,但没有帮助。以上是关于如何更改 h2 数据库密码?的主要内容,如果未能解决你的问题,请参考以下文章