Access denied for user:因ip地址末尾吞0导致连接失败
情况说明:(仅提供该情况下的解决方案)
我是用docker将mysql8.0部署在虚拟机,用navicat、sqlyog等图形化管理工具都能连接,就idea的springboot工程连不上。
连接的时候,yml(yaml)配置文件里写的虚拟机ip是192.168.211.100,结果报错时给的提示是Access denied for user 'root'@'192.168.211.1',末尾的俩0去哪了?
解决方案:
配置连接的yml文件时,url和username处的字符串用单引号或双引号包裹
spring:
application:
name: xxx
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
#url的字符串用引号包裹
url: 'jdbc:mysql://192.168.211.100:3306/xxx?serverTimezone=UTC&userUnicode=true&useSSL=false'
#root也用引号包裹
username: 'root'
#保险起见密码也用引号包裹
password: '123456'
原因:
之前就遇到过密码以0开头必须用引号包裹的情况,猜测原因应该都是该版本idea的yml存在问题,避免yml里的字符串省略引号
笔者idea版本:2021.3
希望出现此情况的朋友们能顺利解决该问题!
版权声明:本文为m0_55913429原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。