问题:重启服务器之后无法登录进入系统
一、Vue Axios 登录报 time out
- 排错过程
- 打开后端日志,排查请求流程的日志,发现日志没有报错,正常输出请求的参数
- 修改到 Debug 日志级别,查看更详细的日志流程,发现没有 MyBatis 的 SQL 查询
- 等了一会,抛出了 MySQL 连接失败的问题(可能是等连接 MySQL 超时之后才抛出,之前时间不够),出现下面的错误
二、Druid 报 create connection SQLException
-
具体报错
- create connection SQLException, url: jdbc:mysql://hybrid03:3306/car_analyse?characterEncoding=utf-8&useSSL=false, errorCode 0, state 08S01
- com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
-
第一反应是 MySQL 连接数超了
- 进入数据库使用 show full processlist 一查,发现才用 21 个连接,就只有 Hive 在保持连接,根本没超(MySQL 默认 max_connections 为 151)
-
第二就开始搜索别人怎么处理 Druid 报 create connection SQLException state 08S01
- 发现很多人写的都是什么数据库连接地址 url 问题,添加个 useSSL=false 就行,然后一看我自己的参数都有,但是还是存在问题,随即放弃了搜索
三、排查 MySQL
- 本地使用 DBeaver 连接远程数据库,发现连接超时,查看是否开启远程连接,排查已开启
- 重启 MySQL、重启 Docker,均未解决,与客户商量一致删除 MySQL 容器重新运行(Docker MySQL 容器数据是挂载到宿主机的,数据不会丢失)
- 重新装载 Docker MySQL 容器的时候,报了下面的一个警告
四、服务器 IPv4 转发被禁用问题
- 具体警告
- WARNING:IPv4 forwarding is disabled. Networking will not work.
- 抱着试一试的心态去修改一下这个问题
- 在宿主机的 /usr/lib/sysctl.d/00-system.conf 中添加 net.ipv4.ip_forward=1 的配置
- 重启 Networ 和 Docker
- systemctl restart network
- systemctl restart docker
- 问题解决,完结