在使用MySQL时,有时候会忘记用户名和密码,这时候可以通过以下方法找回。
$ mysql -u root -pEnter password: (输入空密码回车)mysql>use mysql;mysql>select user, authentication_string, plugin from user;
执行以上代码后,系统会打印出当前数据库中的用户列表,其中authentication_string即为密码(MySQL 5.7以后版本的密码存储方式改变,改为了新的加密方式,无法直接查看明文密码)。
+------------------+-------------------------------------------+-----------------------+| user | authentication_string | plugin |+------------------+-------------------------------------------+-----------------------+| root | | auth_socket || mysql.sys | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password || debian-sys-maint | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | mysql_native_password || root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | mysql_native_password |+------------------+-------------------------------------------+-----------------------+
如果不知道当前的用户名,可以不加where条件查询整个user表:
mysql>select * from user;
以上是找回MySQL用户名和密码的方法,希望对大家有所帮助。