Có CommunicationsException:Lỗi liên kết truyền thông.
Nếu bạn nhận được SQLException:Kết nối bị từ chối hoặc Kết nối đã hết thời gian chờ hoặc một MySQL cụ thể
CommunicationsException: Communications link failure
thì điều đó có nghĩa là DB hoàn toàn không thể truy cập được. Điều này có thể do một hoặc nhiều nguyên nhân sau:
- Địa chỉ IP hoặc tên máy chủ trong URL JDBC không chính xác.
- Tên máy chủ trong URL JDBC không được máy chủ DNS cục bộ nhận dạng.
- Số cổng bị thiếu hoặc sai trong URL JDBC.
- Máy chủ DB không hoạt động.
- Máy chủ DB không chấp nhận kết nối TCP / IP.
- Máy chủ DB đã hết kết nối.
- Một cái gì đó giữa Java và DB đang chặn các kết nối, ví dụ:tường lửa hoặc proxy.
Để giải quyết vấn đề này hay vấn đề khác, hãy làm theo lời khuyên sau:
- Xác minh và kiểm tra chúng bằng ping.
- Làm mới DNS hoặc sử dụng địa chỉ IP trong URL JDBC.
- Xác minh nó dựa trên my.cnf của MySQL DB.
- Khởi động DB.
- Xác minh xem mysqld có được khởi động mà không có tùy chọn --skip-networking hay không.
- Khởi động lại DB và sửa mã của bạn cho phù hợp để cuối cùng nó đóng các kết nối.
- Tắt tường lửa và / hoặc định cấu hình tường lửa / proxy để cho phép / chuyển tiếp cổng.
Nguồn: Chi tiết khác