在不知道原始密码的情况下将 mysql 密码更新为新的哈希格式

在不知道原始密码的情况下将 mysql 密码更新为新的哈希格式

我有一位用户将他的 sql 连接器更新到 6.6.5,但由于密码以旧格式(4.1 之前的版本?)进行哈希处理,因此他无法运行代码。我想将所有 mysql 帐户更新为较新的格式,但不幸的是我不知道所有密码。我最近迁移到新服务器(5.1.67),但我只是为每个用户做了一个 show grants 并将信息复制到新服务器中。

有没有办法简单地告诉它将所有哈希更新为新格式而不提供原始密码?有几个系统运行依赖这些密码(硬编码)的代码,所以我不能简单地要求用户重置他们的密码。

在 CentOS 6.3 mysql 5.1.67

答案1

快速回答:不可以,您不能重新散列现有的哈希值并仍保留其原始含义。

哈希按定义是多 --> 一编码。由于哈希值无法返回其原始值,因此不可能重新哈希哈希值以使原始编码保持完整。

相关内容