Nội dung
Hướng dẫn kích hoạt Remote SQL Server Linux theo 2 cách cơ bản!
I. Giới thiệu
Chào mừng bạn đã quay trở lại với tài liệu hướng dẫn AZDIGI. Ở bài viết hôm nay mình sẽ hướng dẫn bạn kích hoạt tính năng remote sql trên hệ thống Linux cho một user bất kỳ hoặc là toàn bộ các database dưới user root.
Ở một số control thì chức năng remote này có sẵn như là cPanel và bạn chỉ thực hiện cấu hình là có thể remote. Nhưng với những máy chủ cài tay hoặc một số script thì bạn phải cấu hình gán quyền cho các user remote này. Và để thực hiện việc này mời các bạn xem qua bài hướng dẫn này nhé.
II. Các bước thực hiện
Đầu tiên bạn hãy mở file my.cnf
lên. Sau đó tìm giá trị bind-address = 127.0.0.1
, với dòng này có nghĩa là máy chủ sẽ chỉ tìm kiếm các kết nối cục bộ. Và bạn cần thay đổi giá trị này bằng IP cố định của bạn, hoặc sử dụng *
, ::
hoặc 0.0.0.0
để cho phép tất cả các kết nối.
vi /etc/my.cnf
Tiếp theo để thực hiện bạn cần xác định được user cần kích hoạt remote và bạn phải truy cập vào được cơ sở dữ liệu dưới quyền root thông qua lệnh mysql -u root -p
và đăng nhập bằng mật khẩu root mysql. Thông tin này được thiết lập khi bạn cài đặt MySQL/MariaDB.
1. Kích hoạt Remote một Database bất kỳ
Để kích hoạt Remote SQL cho một user bạn sử dụng lệnh sau để thực hiện.
Bước 1: Truy cập vào cơ sở dữ liệu
Đầu tiên bạn truy cập vào cơ sở dữ liệu với quyền root
. Để kích hoạt remote sql cho user chỉ định.
mysql -u root -p
Như ảnh đầu tiên mình có nhiều database và mình sẽ kích hoạt remote cho database có tên là database1
như sau.
Bước 2: Remote SQL
Để kích hoạt cho một database nhất định bạn sử dụng lệnh sau
mysql -u root -p GRANT ALL PRIVILEGES ON *.* TO 'database1'@'%' IDENTIFIED BY 'Mat_Khau_User_Database' WITH GRANT OPTION; FLUSH PRIVILEGES;
Trong đó bạn cần thay đổi như sau
- database1: Thay vào bằng tên database của bạn
- Mat_Khau_User_Database: Nhập vào mật khẩu của Database user
- %: Nếu bạn cho phép tất cả các IP remote vào bạn để dấu
%
. Nếu bạn chỉ cho phép 1 IP bạn hãy thay bằng IP của bạn
Sau khi hoàn tất bạn thoát ra và khởi động lại dịch vụ mysql/mariadb. Ở đây mình sử dụng MariaDB nên sẽ khởi động lại bằng lệnh systemctl restart mariadb
Ảnh thực tế thực hiện
Kiểm tra kết nối SQL.
Ở đây mình sử dụng phần mêm Navicat để kết nối, ngoài ra bạn có thể sử dụng phần mêm khác như workbench hoặc hàm php.
Bên dưới là ảnh thực tế kết nối và các thông tin bao gồm
- Connection Name: Đặt tên bất kỳ
- Host: Nhập vào IP máy chủ
- Port: 3306 (Mặc định)
- User Name: Nhập vào user Database
- Edit Password: Nhập vào Mật khẩu User Database
Sau khi nhập hoàn tất bạn click Test Connection để kiểm tra. Nếu hiện thông báo Connection Successful
như ảnh là đã thành công
Và đây là ảnh thông báo kết nối thành công khi kích hoạt remote sql.
2. Kích hoạt cho toàn bộ Database
Nếu như máy chủ bạn có nhiều tài khoản database và bạn muốn kích hoạt cho toàn bộ, chỉ sử dụng user root
để remote và có thể thực thi tất cả các database bạn thực hiện như sau.
Bước 1: Truy cập vào cơ sở dữ liệu
Bạn sử dụng lệnh mysql -u root -p
sau đó nhập mật khẩu root của mysql để vào.
mysql -u root -p
Bước 2: Kích hoạt remote sql
Bạn sử dụng lệnh sau để kích hoạt cho user root.
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mat_khau_root_mysql' WITH GRANT OPTION; FLUSH PRIVILEGES;
Tróng đó:
- root: là user root dùng để remote
- %: Nếu bạn cho phép tất cả các IP remote vào bạn để dấu
%
. Nếu bạn chỉ cho phép 1 IP bạn hãy thay bằng IP của bạn - mat_khau_root_mysql: Bạn nhập vào mật khẩu root mysql
Khởi động lại dịch vụ MySQL/MariaDB
Sau khi hoàn tất bạn thoát ra và khởi động lại dịch vụ mysql/mariadb. Ở đây mình sử dụng MariaDB nên sẽ khởi động lại bằng lệnh systemctl restart mariadb
systemctl restart mariadb
Kiểm tra kết nối SQL.
Ở đây mình sử dụng phần mêm Navicat để kết nối, ngoài ra bạn có thể sử dụng phần mêm khác như workbench hoặc hàm php.
Bên dưới là ảnh thực tế kết nối và các thông tin bao gồm
- Connection Name: Đặt tên bất kỳ
- Host: Nhập vào IP máy chủ
- Port: 3306 (Mặc định)
- User Name: Nhập vào
root
- Edit Password: Nhập vào Mật khẩu
root
mysql
Ảnh GIF thực hiện demo
Lưu ý: Nếu bạn không truy cập được đến PORT 3306. Bạn cần mở IN/OUT Port 3306 trên firewall để hoạt động.
III. Tổng kết
Như vậy mình vừa hướng dẫn bạn kích hoạt Remote SQL Server Linux. Chúc các bạn có thể thực hiện thành công. Xem thêm các bài viết hữu ích về VPS Linux tại đường dẫn sau:
Nếu các bạn cần hỗ trợ các bạn có thể liên hệ bộ phận hỗ trợ theo các cách bên dưới:
- Hotline 247: 028 888 24768 (Ext 0)
- Ticket/Email: Bạn dùng email đăng ký dịch vụ gửi trực tiếp về: support@azdigi.com.