SQL Node trong MySQL Cluster là thành phần chịu trách nhiệm xử lý các truy vấn SQL từ các ứng dụng và truy cập dữ liệu được lưu trữ trên các Data Node. Mỗi SQL Node sử dụng MySQL Server để kết nối với Management Node và các Data Node nhằm thực hiện các thao tác trên dữ liệu.
Dưới đây là hướng dẫn chi tiết về cách cấu hình SQL Node trong MySQL Cluster.
Trước tiên, bạn cần cài đặt MySQL Server trên các máy chủ sẽ đóng vai trò SQL Node.
Trên hệ điều hành Ubuntu/Debian:
sudo apt-get update sudo apt-get install mysql-server
Trên hệ điều hành CentOS/RedHat:
sudo yum install mysql-server
my.cnf
cho SQL NodeSau khi cài đặt MySQL Server, bạn cần cấu hình tệp my.cnf
để cho phép MySQL Server kết nối với MySQL Cluster.
Mở tệp cấu hình my.cnf
:
sudo nano /etc/mysql/my.cnf
Thêm các dòng sau để kích hoạt MySQL Cluster và kết nối SQL Node với Management Node:
[mysqld] ndbcluster # Kích hoạt tính năng NDB Cluster ndb-connectstring=management_ip # Địa chỉ IP của Management Node
ndbcluster
: Cho phép SQL Node hoạt động với MySQL Cluster.ndb-connectstring
: Đây là địa chỉ IP của Management Node, nơi quản lý toàn bộ cấu hình cluster.Thay management_ip
bằng địa chỉ IP thực của Management Node.
Sau khi chỉnh sửa tệp cấu hình my.cnf
, bạn cần khởi động lại MySQL Server để áp dụng các thay đổi:
sudo service mysql restart
Sau khi SQL Node được khởi động lại, bạn có thể kiểm tra xem nó có kết nối thành công với MySQL Cluster hay không. Sử dụng lệnh sau trên Management Node để kiểm tra trạng thái của tất cả các node trong cluster:
ndb_mgm -e show
Nếu SQL Node kết nối thành công, bạn sẽ thấy nó hiển thị trong danh sách các node với trạng thái “CONNECTED”.
Bạn có thể tinh chỉnh SQL Node để tối ưu hóa hiệu suất dựa trên yêu cầu của ứng dụng. Một số thông số trong tệp my.cnf
có thể hữu ích để điều chỉnh hiệu suất:
[mysqld] max_connections=1000 # Số lượng kết nối tối đa query_cache_size=0 # Kích thước cache truy vấn (nên đặt về 0 với MySQL Cluster) ndb_force_send=1 # Tăng tốc độ truyền dữ liệu tới Data Node
Với các bước trên, SQL Node đã được cấu hình để tham gia vào MySQL Cluster. SQL Node có thể xử lý các truy vấn từ ứng dụng, gửi các truy vấn đó tới Data Node và trả kết quả về cho người dùng.