留着自己备用
当我们在Linux上装完mysql或mariadb后,有时候并不提示密码,或者我们忘记了密码,此时就需要我们找回密码了
网上有很多解决办法。我这边按我的方法来个简单的
1、在/etc/mysql/下找my.cnf或mariadb.cnf或者其他*-server.cnf,里面有[mysqld]这行内容,在下面粘贴skip-grant-tables保存。
然后
service mysql restart重启。
2、mysql -uroot -p #直接按回车,这时不需要输入root密码。
输入新的密码(假如新密码是123456)
update mysql.user set password=password('123456') where User="root" and Host="localhost";
flush privileges; #刷新系统授权表
3、删除第1步中的skip-grant-tables,保存退出
然后service mysql restart重启。
4、下面就可以用mysql -uroot -p输入密码登录了
PS:如果还不行,在普通用户模式下不能登陆,root下可以。
sudo mysql -u root
SELECT user, plugin FROM user;
UPDATE user SET plugin=""; // without WHERE clause
UPDATE user SET password=PASSWORD("my_password") WHERE user="root";
FLUSH PRIVILEGES;
貌似就可以了