问题描述
报错内容:Public Key Retrieval is not allowed
问题出现的原因:useSSL = false
当禁用 SSL/TLS 协议传输后,客户端会使用服务器的公钥进行传输,默认情况下客户端不会主动去找服务器拿公钥,进而会出现错误。出现 Public Key Retrieval 的场景可以概括为:禁用 SSL/TLS 协议传输切当前用户在服务器端没有登录缓存的情况下,客户端没有办法拿到服务器的公钥。
jdbc.url=jdbc:mysql://localhost:3306/ssmbuild?useSSL=false&useUnicode=true&characterEncoding=utf8
解决
- useSSL = true
- idea先连接数据库,再运行代码
报错内容:Path does not chain with any of the trust anchors
问题出现的原因:useSSL = true
根据MySQL 5.5.45+、5.6.26+和5.7.6+的要求,为了数据的安全及维护,如果不设置显式选项,则必须建立默认的SSL连接(True)。
解决
useSSL = false
报错内容:无效的源发行版
问题出现的原因:pom.xml != language level != jdk != java Compiler Target bytecode version
解决
将三者更改为一致