a. 问题描述:No Datasource Set
b. 产生原因:
docker-compose
基于镜像mysql:8.0.28
,nacos/nacos-server:v2.0.4
构建一个mysql单机模式nacos
,在进行docker启动之后,nacos日志输出异常错误信息No Datasource Set
,最后导致nacos应用自我销毁。我使用mysql
命令行工具进行连接,,“欻”地一下就连上了,使用mysql的workbeanch
也可以轻易连上,我百思不得其解,这是为什么呢?明明可以连接呀!为什么会显示No Datasource Set
? 好久好久之后,我突然想到,nacos
是java项目,使用的是数据库连接驱动包,会不会是驱动包的问题。我刚好有个客户端Dbeaver
是使用数据库连接驱动包,我“咔”地打开一测试,显示Public Key Retrieval is not allowed
,哦哦哦…… 我是服了,这个跟没设置数据源有关系吗?输出一些不明所以的异常信息有个什么鬼用?
c. 解决方法:
增加mysql的连接url参数allowPublicKeyRetrieval=true
即可!其余的参数偶尔也会因为稀奇古怪的错,可加可不加,出错了再说