记一次远程调用数据库报错的大坑!

背景:

  • 远程服务器为 Linux
  • 使用 docker 容器化 mysql
  • dos 窗口远程调用、JDBC基础调用均正常,连接池严重报错

处理:

刚开始看到报错里有这么段话

Communications link failure
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.

便以为是 mysql 1.5+的特性,就增设了自动检查链接的设置,无果。

后设想是否为服务器禁止了远程调用(权限不足?),于是便用 dos 远程连了 mysql (连上了就应该明白不是这块出错了!!!),检查了下 mysql 的配置,发现远程调用拥有 root 权限,继续思索。

既然是调用 Druid 连接池出错,会不会是因为阿里放弃了德鲁伊有什么bug没修呢》(能这么容易让你碰到?

于是便更改连接池尝试使用c3p0,无果orz

仔细翻看了下报错,发现除了Connect failed,还有这么一句

No appropriate protocol (protocol is disabled or cipher suites are inappropriate)

嗯?火速百度,找到 jdk/jre/lib/security/java.security 下的安全文件删除了 SSL、TSL 选项,后重启服务

成了!!!

总结:

报错看一半,开发泪两行,这玩意耗了我整整两天啊orz

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值