MySQL5.6忘记root用户名和密码

首先我们要做的是关闭数据库,还好这个只是一个开发库,要是生产库的话使用另外一种方法修改root用户名和密码,我在另一篇文章有记载

然后我们跳过网络,跳过授权表,这个时候只有本机可以登录了,外部机器就不可以了

/usr/local/mysql/bin/mysqld_safe --skip-grant-tables --skip-networking &

然后就是连接数据库

mysql -p或者使用mysql

update mysql.user set authentication_string=password('123qwe') where user='root' and Host = 'localhost';

这里我还以为还是修改Password字段呢,新版的mysql数据库下的user表中已经没有Password字段了

而是将加密后的用户密码存储于authentication_string字段

flush privileges;

exit;

修改完成之后重启数据库

但此时操作似乎功能不完全,还要alter user…

mysql> alter user 'root'@'localhost' identified by '123';

或者使用

mysql> set password for 'root'@'localhost'=password('123');
 
文章转载自:
http://www.jb51.net/article/77858.htm