2011-05-19 89 views
7

我们可以通过使用mysqld_safe--skip-grant-tables选项重置mysql的密码。恢复MySQL root密码

  1. 我们可以重置没有重新启动mysql的?
  2. 我们能恢复密码,而不是重置?

回答

6
  1. 没有
  2. 没有

而且还有两个没有答案的好理由。

  1. 你不能让任何非root用户重置你的root密码,而没有完全的管理级别访问该主机上的MySQL进程。
  2. MySQL的密码(如Unix的密码)加密是1个街道,他们可复位,但不能被解密了。
1

1)您可以更新mysql数据库中的用户表,但前提是您仍然拥有具有足够权限的活动连接。

2)你不能密码不存储,只有他们的哈希值,你的密码的登录哈希值与存储在mysql中的哈希值进行比较,除了尝试所有可能的密码之外没有办法从哈希中查找密码希望哈希匹配。

1
  1. 停止MySQL服务,并在安全模式下启动
  2. 启动mysqld --skip-赠款表
  3. 更改密码正常

也见[1]:http://www.debian-administration.org/articles/442

+0

不回答这个问题。您的第一个建议违反了OP的第一个要求,但没有解释原因。 – NotMe 2013-08-15 17:26:55