MySQL 5.1.31 chạy trên Windows XP.
Từ máy chủ MySQL cục bộ (192.168.233.142) Tôi có thể kết nối với quyền root như sau:
>mysql --host=192.168.233.142 --user=root --password=redacted
Từ một máy từ xa (192.168.233.163), tôi có thể thấy rằng cổng mysql đang mở:
# telnet 192.168.233.142 3306
Trying 192.168.233.142...
Connected to 192.168.233.142 (192.168.233.142).
Nhưng khi thử kết nối với mysql từ máy từ xa , tôi nhận được:
# mysql --host=192.168.233.142 --user=root --password=redacted
ERROR 1045 (28000): Access denied for user 'root'@'192.168.233.163' (using password: YES)
Tôi chỉ có 2 mục trong mysql.user:
Host User Password
--------------------------------------
localhost root *blahblahblah
% root [same as above]
Tôi cần làm gì hơn nữa để cho phép truy cập từ xa?
BIÊN TẬP
Theo đề xuất của Paulo bên dưới, tôi đã thử thay thế mục nhập mysql.user cho% bằng một mục cụ thể IP, vì vậy bảng người dùng của tôi bây giờ trông như thế này:
Host User Password
------------------------------------------
localhost root *blahblahblah
192.168.233.163 root [same as above]
Sau đó tôi khởi động lại máy, nhưng vấn đề vẫn còn.