最近项目需要用mysql数据库,同事把一个新安装的数据交给我使用,没想到一步一个坑,在此记录一下遇到的这个问题。
问题描述
使用navicat数据库工具连接mysql时,弹出了“Password authentication failed”这个错误,于是又开始了漫漫查错之路
解决过程
数据校验
登录linux中的mysql数据库,确保ip和账号密码无异常,登录命令如下,回车键后输入密码//登录数据库mysql -uroot -p
配置文件
确保了给的账号相关信息没有问题后,我又查询了一些资料,发现需要修改配置,步骤如下:
打开/etc/ssh/sshd_config文件将PermitRootLogin yes前的#去掉将PasswordAuthentication前的#去掉,并将no改为yesservice ssh restart 重启ssh服务
正常情况做到这里应该就好了
查看权限
如果经过上面操作还是无法登录,那么可以看一下是否是权限有问题。尽管我一开始下意识的认为root账户应该是所有权限打开的,但是试验后才发现还是需要修改权限的。
//用户授权grant all privileges on *.* to 'root'@'%' identified by '123' with grant option;//刷新权限flush privileges;
all privileges:表示所有权限(SELECT、CREATE、DELETE、DELETE、ALTER等)*:两个星号表示授权所有数据库的所有表%:表示root用户可以通过任何主机登录
关于授权的命令和解释网上有很多的资料文档,大家可以自行查找,我就不一一赘述了
修改完权限后,再次通过数据库工具连接测试,发现终于连接通过,于是把这艰难的过程记录一下,希望对其他人能有所帮助。。。
如果觉得《数据库工具连接Mysql报Password authentication failed错误》对你有帮助,请点赞、收藏,并留下你的观点哦!