01/10/2018, 15:09

Lỗi Can't connect to MySQL server on 'IP Address' (111)

em đang sử dụng hosting remote sql đến vps, nhưng khi kết nối thì nó báo lỗi là Can’t connect to MySQL server on ‘xxx.xxx.xx.x’ (111) (xxx là địa chỉ ip của vps)

em đã search google và làm các cách như : comment #bind-address trong my.cnf, em cũng đã tạo user mysql grant all quyền cho địa chỉ ip của hosting kết nối đến , và cho phép địa chỉ ip của host trong iptables rule trên vps nhưng vẫn ko được.

anh chị giúp em với ạ , em cảm ơn!!

Vô Thin viết 17:10 ngày 01/10/2018

Xóa bỏ hẳn cái dòng skip-networking trong file my.cnf đi nhé - có dòng này, ở máy khác không thể kết nối qua được vì máy khác kết nối đến thông qua TCP/IP chứ không qua socket như localhost ngay chính VPS đó. Cũng chú ý: mỗi lần chỉnh sửa gì trong my.cnf nhớ restart lại mysql trước khi thử kết nối.

Duy Hoàng viết 17:18 ngày 01/10/2018

ko được anh ạ, em thử rồi, 1 hosting của em đang kết nói từ xa đến được mà.

cái hosting này của em trước đó cũng được, nhưng tự nhiên lần này sau khi reboot vps nó lại báo lỗi này, còn hosing kia vẫn kết nối bình thường

Duy Hoàng viết 17:21 ngày 01/10/2018

không biết nó có liên quan gì đến phần cài đặt quản trị hosting ko nhỉ, ko thì em pm support hosting xem sao

Dark.Hades viết 17:17 ngày 01/10/2018

xem thử IP của cái client connect đó có nằm trong danh sách đã granted ở MySQL database không?

stackoverflow.com
jack yang

grant remote access of MySQL database from any IP address

mysql, grant
answered by jack yang on 03:14AM - 08 Feb 17

Đào An viết 17:10 ngày 01/10/2018

Đã restart mysql chưa?

sudo service mysql restart
Duy Hoàng viết 17:19 ngày 01/10/2018

em tạo riêng 1 user grant cho đúng IP đó luôn, tạo thêm cái là % cho all ip, đều ko đc ạ

Duy Hoàng viết 17:11 ngày 01/10/2018

dạ rồi ạ. 1 client khác của em vẫn connect bình thường mà, mỗi cái này bị vậy @@

Vô Thin viết 17:15 ngày 01/10/2018

Giờ thử telnet đến địa chỉ IP của máy chạy mysql trên port của nó xem nó có trả lời? Nếu không trả lời thì tường lửa đã chặn đâu đó hoặc mạng cấu hình sao đó không thông tới được.

ví dụ: telnet 45.11.123.55 3306

Thay địa chỉ IP và port vào nếu port khác 3306. Khi telnet có trả lời, chứng tỏ username và/ hoặc password được tạo ra quên flush hay sao đó. Còn nếu không trả lời, gửi ticket cho bên support bán hosting.

Bài liên quan
0