Cách kích hoạt Remote Access MySQL

Remote Access MySQL

1. Thay đổi cấu hình MySQL

Mặc định MySQL sẽ disable remote access, bạn cần enable lên bằng cách mở file cấu hình MySQL, ví dụ với đường dẫn /etc/my.cnf

nano /etc/mysql/my.cnf

Comment những dòng sau:

#bind-address = 127.0.0.1
#skip-networking

Khởi động lại MySQL Server
service mysql restart

2. Gán quyền remote 

Mặc định các account MySQL chỉ được gán quyền access locally mà thôi, để kết nối được từ bên ngoài, bạn cần thêm một bước là cập nhật privilege.
Trong ví dụ này, mình sẽ cho phép tài khoản root được phép login remote.

– Login vào phpMyAdmin sử dụng tài khoản admin và password tự động generate khi bạn cài đặt(hoặc tài khoản MySQL root).
– Nhấn tab Users, bạn sẽ thấy danh sách account MySQL hiện tại tương tự như sau:

tiếp theo bạn nhấn tab SQL, nhập lệnh sau trong ô text rồi nhấn nút Go

GRANT ALL PRIVILEGES ON *.* TO ‘root’@’%’ IDENTIFIED BY ‘PASSWORD’ WITH GRANT OPTION

Lưu ý thay PASSWORD bằng mật khẩu tài khoản root, thay % bằng IP cụ thể nếu bạn chỉ cho phép login từ IP này. Ví dụ của mình sử dụng mật khẩu c0ef6f242253b0028

– Nếu không có vấn đề gì xảy ra thì bạn đã update quyền thành công. Tiếp theo quay trở lại tab Users bạn sẽ thấy thêm một hàng mới với Host là %.

Bây giờ, bạn có thể kết nối trực tiếp đến MySQL Server từ máy tính cá nhân hoặc VPS khác rồi đấy.

– Nếu muốn tắt Remote Access, trong tab Users bạn chọn User name có Host là % rồi nhấn nút Remove selected users là xong.

3. Mở port 3306

Đôi khi, bạn cần mở port 3306 thủ công để MySQL có thể lắng nghe kết nối. Sau bước 2 mà vẫn không connect được, bạn hãy sử dụng lệnh sau:

# iptables -I INPUT -p tcp -m tcp –dport 3306 -j ACCEPT

Nếu muốn chỉ chấp nhận kết nối từ IP 10.5.1.3, hãy sử dụng lệnh sau:

# iptables -I INPUT -i eth0 -s 10.5.1.3 -p tcp –destination-port 3306 -j ACCEPT

Chúc các bạn thành công!

Be the first to comment

Leave a Reply

Your email address will not be published.


*