如果 MySQL 正在运行,首先杀之: killall -TERM mysqld。

运行mysqld_safe –skip-grant-tables &

如果此时不想被远程连接:mysqld_safe –skip-grant-tables –skip-networking &

使用mysql连接server

更改密码: update mysql.user set authentication_string=password(‘123qwe’) where user=’root’ and Host = ‘localhost’;

*特别提醒注意的一点是,新版的mysql数据库下的user表中已经没有Password字段了

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

mysql> flush privileges;

mysql> quit;

修改完毕。重启

killall -TERM mysqld。

mysqld_safe &

然后mysql就可以连接了

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

alter user ‘root’@’localhost’ identified by ‘123’;

网文说酱紫也可以:set password for ‘root’@’localhost’=password(‘123’);

自启动

cp mysql.server /etc/init.d/mysql

chmod +x /etc/init.d/mysql

chkconfig –add mysql

reboot试试看