环境:
Ubuntu 16.04.1 LTS (GNU/Linux 4.4.0-57-generic x86_64)
mysql5.7.22
问题:
在linux环境安装mysql后,进入mysql,提示密码错误。不输也错误。Access denied for user 'root'@'localhost' (using password: YES) 。
解决方法:
各种查找后,发现有默认用户名和密码。数据存在“/etc/mysql/debian.cnf”处。如图所示
用文件里的用户名及密码即可登录mysql。(可以直接复制,手输的话,有些数字与大小写字母看起来一样,容易出错)
之后修改root密码也是各种坑。下面步骤也比较重要
1、选择mysql数据库。
use mysql;
2、修改的密码要符合安全性要求。mysql默认密码安全参数validate_password_policy为MEDIUM,密码长度最短8位,需数字、大小写字母、特殊字符混合。
update user set authentication_string=password('Ab_123456') where user='root';
如果不想密码如此复杂,可将安全性参数调低,如图所示。设置validate_password_length可将长度要求变短。
set global validate_password_policy=0;
3、密码设置完后,需要刷新权限,否则重新登录不会生效。
flush privileges;