版本更新,原来user里的password字段已经变更为authentication_string
版本更新 缘故,好多网上的教程都不适用了,甚至连官网的文档也不是能够顺利操作的。
如果 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
本文地址:https://www.stayed.cn/item/25619
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我