发布于 2021-02-23 22:47:56
答案可能有点晚了,但它可能会帮助其他有同样问题的人。
首先去检查你的加密文件在哪里。通常存储在%AppData%\MySQL\Workbench\workbench_user_data.dat中
现在您有了文件位置,打开powershell并复制并粘贴以下命令序列(顺序很重要):
$cipher = Get-Content $env:APPDATA\MySQL\Workbench\workbench_user_data.dat -Encoding Byte按Enter键
$scope = [System.Security.Cryptography.DataProtectionScope]::CurrentUser按Enter键
$mysqlpwd = [System.Security.Cryptography.ProtectedData]::Unprotect(
$cipher, $null, $scope )按Enter键
[System.Text.UTF8Encoding]::UTF8.GetString($mysqlpwd)按Enter键
现在您可以看到以下输出:
Mysql@X:Y@Z#DBUSER#DBPASSWORD
...
ssh@Z:22#SSHUSER#SSHPASSWORD
...参考文献:
发布于 2019-12-19 15:49:51
在Windows的MySQL工作台中无法查看存储的密码。该实施使用Windows加密API并将加密的密码存储在自己的文件中,该文件只能由加密密码的同一主机上的同一用户解密。
从保险库中获取密码的唯一解决方案是使用Workbench正在使用的代码。这需要为这个任务编写一个小工具。
发布于 2022-01-17 05:03:28
我没有足够的分数来评论@L.John的答案,这是有效的。只需对此命令稍作更改-
$cipher = Get-Content $env:APPDATA\MySQL\Workbench\workbench_user_data.dat -Encoding字节
相反,请将其运行为
$cipher = Get-Content $env:APPDATA\MySQL\Workbench\workbench_user_data.dat -AsByteStream
参考https://github.com/PowerShell/GPRegistryPolicyParser/issues/5
https://stackoverflow.com/questions/59399059
复制相似问题