连接数据库报“Communications link failure”错误和Public Key Retrieval is not allowed错误
纯新手,最近在学习jdbc用idea软件连接MySQL数据库时,遇到了一些错误,首先我的MySQL数据库当时没有开启,跟着视频中老师一步一步地连接数据库,在我运行时突然报错,出现的语句是“Communications link failure”,这个问题翻译过来的意思其实就是连接失败,接下来启动MySQL后就可以解决了。我就说说怎么启动MySQL数据库。
第一种方式:手动
1.点击我的电脑,右键点开,选择管理,打开。
2.选择“服务和应用程序”,打开。
2.选择“服务”打开
3.找到MySQL,右键启动,(也可以双击它,把手动改为自动,这样子以后它会自动启动了)
第二种方式:
1.使用管理员打开cmd
2. 输入“net start mysql” ( 启动mysql的服务)
(注意:net stop mysql的是关闭mysql服务)
然而,解决了这个问题后,运行时,又报错了,报“Public Key Retrieval is not allowed”错误,这次我上网去找答案,发现了解决方案,就是在连接数据库的url中,加上allowPublicKeyRetrieval=true参数,例子如下:
DriverManager.getConnection("jdbc:mysql:///test?useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true", "root", "password");
最后解决了问题。但是我也不知道为啥。。。还有,运行成功后,我重启idea,去掉这条allowPublicKeyRetrieval=true参数后,居然可以运行,明明之前没有不能运行。。。脑壳疼,不清楚咋回事,有大神知道为什么吗?求教!!!