2019年12月6日更新。 操作的是阿里云轻量应用服务器的ubuntu16.04系统,数据库版本5.7.28
步骤一:终端执行mysql -u root p123456
,报如下错误。确实是忘记密码了,报错是应该的。
步骤二:执行sudo vim /etc/mysql/debian.cnf
命令,复制密码egZSaEJvOEU5HI5a
,然后退出
步骤三:mysql -udebian-sys-maint -pegZSaEJvOEU5HI5a
-p后面紧跟密码,当然你也可以写成mysql -udebian-sys-maint -p
,然后回车后,输入暗文egZSaEJvOEU5HI5a
步骤四:查看数据库版本
select version();
步骤五:输入use mysql;
使用名为mysql的数据库
步骤六:输入select user, plugin from mysql.user;
,然后查看user为root对应的plugin的值
步骤七:更新用户名为root
的密码为666666
。
update user set authentication_string =password('666666') where user='root';
注意:如果步骤五中root对应的plugin的值不是mysql_native_password
,那么步骤六的命令需改为update user set authentication_string =password('666666'),plugin='mysql_native_password' where user='root';
步骤八:刷新,使之生效
FLUSH PRIVILEGES;
步骤九:退出
quit;
步骤十:关闭mysql服务,然后开启mysql服务。注意不要用restart,会有莫名其妙的新密码也无法识别正确的问题
sudo service mysql stop
sudo service mysql start
步骤十一:以后root用户,密码为666666登录mysql
mysql -u root -p666666
步骤一到步骤十一的全部命令
2019年2月份
【经典解决办法】https://www.cnblogs.com/py1612919884/p/9327015.html
https://blog.csdn.net/wangliyao518/article/details/83011522
测试【成功】
mysql -udebian-sys-maint -p
use mysql;
select user, plugin from mysql.user;
update user set authentication_string =password('NewCoderZB'),plugin='mysql_native_password' where user='root';
select user, plugin from mysql.user;
exit
sudo service mysql restart
mysql -uroot -pNewCoderZB
进入mysql,命令行的方式一:
mysql -uroot -pCoderZB
进入mysql,命令行的方式二:
先敲mysql -uroot -p
回车,然后输入密码(密文)即可。