Mysql失去了它的root密码

我有一个奇怪的问题,我的MySQL丢失/重置根密码自动。 我的意思是把它重置为零。 这个月发生了两次。 我担心,这可能是一个安全问题,因为数据是开放的,只有没有密码的人才会等待!

这是版本:

mysql --version mysql Ver 14.14 Distrib 5.1.56, for redhat-linux-gnu (i386) using readline 5.1 

任何帮助,将不胜感激。

更新:

从mysql.user中select用户,主机,密码的输出; 密码重置后的外观

 | root | localhost | | root | 127.0.0.1 | | | localhost | | | admin | localhost | ################################# | (I have removed the actual output with #) 

所以所有的密码都是空白的,除了另一个用户名为“admin”

这个答案与发生这种行为的Ruby on Rails框架有关

  1. 有用户的root和密码的MySQL
  2. 引导新的铁路项目使用与MySQL“的轨道新的项目名称
    -d mysql“
  3. 不要修改config / database.yml – 服务器的默认凭证是:root,密码是空的
  4. 耙数据库:创build提示显示 – 要求根密码,然后当你提供root密码

答案是在这里的第68行GRANT命令

基本上它执行GRANT命令与凭据匹配您当前的database.yml

1)如果可以,启用SQL日志logging。

 log = /var/log/mysql/mysql.log 

这将允许您跟踪密码更新后,从那里,您可以与其他日志相关的其他活动。

2)你有一个pipe理进程(例如Plesk)或类似的东西吗? 您可能需要检查是否不是默认重置login。

3)你是唯一可以访问服务器的人吗? 如果没有,您可能需要validation没有人能够访问数据库,或者至less没有root密码到SQL数据库。