当在项目中连接数据库时报错:严重: create connection error java.sql.SQLException: Access denied for user ‘root’@‘localhost’ (using password: YES)
分析问题:
提示的user password:YES不代表你的密码就是正确的,可能是密码错误,用户名不存在
可以在终端中根据你的配置的用户名,密码进行登录,如果登录不成功。有三种情况:
一:用户名不存在
二:如果用户名存在,可能是没有给其授权。
三:可能是你的密码错误
如何免密登录并创建用户,重置密码,授权?
1.停止mysql
net stop mysql;
2.跳过密码验证
mysqld --shared-memory --skip-grant-tables;
3.登录mysql
mysql -uroot -p;
4.刷新下权限
FLUSH PRIVILEGES;
5.使用mysql数据库
use mysql;
6.查看用户是否存在
select * from user;
7.不存在就创建用户
create user 用户名 identified by '密码';
8.刷新权限
FLUSH PRIVILEGES;
9.如果存在则重置密码
ALTER USER '用户名'@'localhost' IDENTIFIED BY '新密码';
10.授权
grant all privileges on *.* to '用户名'@'%';
11.刷新权限
FLUSH PRIVILEGES;