MySQL密码也能重置。如果你忘记了MySQL密码,如何重置它呢? 下面是错误答案: 首先停止MySQL服务,然后使用skip-grant-tables参数启动它: shell> /etc/init.d/mysql stop shell> mysqld_safe --skip-grant-tables &
UPDATE mysql.user SET Password=PASSWORD('...') WHERE User='...' AND Host= '...'; FLUSH PRIVILEGES;
下面是正确答案: 关键点是:在使用skip-grant-tables参数的同时,还要加上skip-networking参数:
shell> /etc/init.d/mysqld restart 上面的方法需要重启两次服务,实际上还能更优雅一点,重启一次即可: 首先需要把用到的SQL语句保存到一个文本文件里(/path/to/init/file): UPDATE mysql.user SET Password=PASSWORD('...') WHERE User='...' AND Host= '...'; FLUSH PRIVILEGES;
shell> /etc/init.d/mysql stop shell> mysqld_safe --init-file=/path/to/init/file &
提示:本文用到的参数都是通过命令行mysqld_safe传递的,实际上也可以通过my.cnf。 参考:关于重置密码,官方文档里有专门的描述:http://dev.mysql.com/doc/refman/5.5/en/resetting-permissions.html (责任编辑:admin) |