❤️ AZDIGI chính thức cập nhật hệ thống blog mới hoàn chỉnh. Tuy nhiên có thể một số bài viết bị sai lệch hình ảnh, hãy ấn nút Báo cáo bài viết ở cuối bài để AZDIGI cập nhật trong thời gian nhanh nhất. Chân thành cám ơn.

Remote MySQL cho phép kết nối database từ bên ngoài server, ví dụ từ ứng dụng chạy trên server khác hoặc từ máy local để debug. Mặc định DirectAdmin tắt tính năng này vì lý do bảo mật.

Bài viết này hướng dẫn cách bật Remote MySQL trên DirectAdmin.

💡 Lưu ý: Trên DirectAdmin phiên bản mới (Evo skin), bạn cũng có thể quản lý Remote MySQL trực tiếp từ giao diện admin: MySQL Management → Remote MySQL

Bật Remote MySQL

# Mở file cấu hình MySQL
vi /etc/my.cnf

# Sửa bind-address để cho phép kết nối từ bên ngoài bind-address = 0.0.0.0

# Restart MySQL systemctl restart mysqld # hoặc systemctl restart mariadb

💡 Kiểm tra MySQL service đang chạy: systemctl status mysqld hoặc systemctl status mariadb. Trên server dùng MySQL 8.x (phiên bản phổ biến hiện nay với DirectAdmin), cấu hình tương tự.

Mở port trong firewall

# CSF: whitelist IP cần kết nối
csf -a REMOTE_IP
# Hoặc mở port 3306 (ít an toàn hơn)
vi /etc/csf/csf.conf
# Thêm 3306 vào TCP_IN
csf -r

Nếu dùng firewall khác (ufw, firewalld), hãy mở port tương ứng:

# UFW
ufw allow from REMOTE_IP to any port 3306
# Firewalld
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="REMOTE_IP" port port="3306" protocol="tcp" accept'
firewall-cmd --reload

Cấp quyền cho user

GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'REMOTE_IP' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;

⚠️ Chỉ cho phép IP cụ thể kết nối remote MySQL. KHÔNG BAO GIỜ dùng '%' (all IPs) trong production vì bất kỳ ai cũng có thể thử đăng nhập database. Luôn dùng mật khẩu mạnh cho tài khoản remote.

Kiểm tra kết nối

Sau khi cấu hình xong, bạn có thể kiểm tra kết nối từ máy remote:

mysql -h SERVER_IP -u username -p database_name

💡 Nếu gặp lỗi “Connection timed out”, kiểm tra lại firewall (CSF, ufw, firewalld) và đảm bảo port 3306 đã được mở cho IP của bạn.

Tổng kết

Bật Remote MySQL cần 3 bước: sửa bind-address, mở firewall, cấp quyền user. Luôn giới hạn IP cụ thể và dùng mật khẩu mạnh. Nếu không cần nữa, tắt lại bằng cách đổi bind-address về 127.0.0.1 và restart MySQL.

Xem thêm: Quản lý MySQL trên DirectAdmin

Chia sẻ:
Bài viết đã được kiểm duyệt bởi AZDIGI Team

Về tác giả

Thạch Phạm

Thạch Phạm

Đồng sáng lập và Giám đốc điều hành của AZDIGI. Có hơn 15 năm kinh nghiệm trong phổ biến kiến thức liên quan đến WordPress tại thachpham.com, phát triển website và phát triển hệ thống.

Hơn 10 năm phục vụ 80.000+ khách hàng

Bắt đầu dự án web của bạn với AZDIGI