Cách cài đặt Percona XtraDB Cluster trên Rocky Linux 9

theanh

Administrator
Nhân viên
Percona XtraDB Cluster là giải pháp cụm cơ sở dữ liệu mã nguồn mở hoàn toàn dành cho MySQL. Giải pháp này cho phép bạn tạo triển khai máy chủ MySQL có tính khả dụng cao với hiệu suất mạnh mẽ và cao. Phiên bản mới nhất của Percona XtraDB Cluster là 8.0, hoàn toàn tương thích với MySQL Server Comunity Edition 8.0.

Percona XtraDB Cluster cung cấp các tính năng như sao chép đồng bộ, sao chép đa nguồn, cung cấp nút tự động, cấu hình mã hóa SSL tự động và hiệu suất được tối ưu hóa.

Percona XtraDB Cluster đảm bảo tính khả dụng cao của máy chủ cơ sở dữ liệu của bạn, cung cấp khả năng mở rộng tuyến tính và ngăn ngừa thời gian chết và mất dữ liệu.

Hướng dẫn này sẽ chỉ cho bạn cách thiết lập cụm MySQL thông qua Percona XtraDB Cluster (PXC) trên máy chủ Rocky Linux 9. Bạn sẽ cài đặt Percona XtraDB Cluster vào nhiều hệ thống Rocky Linux và thiết lập Percona XtraDB Cluster để cho phép sao chép cơ sở dữ liệu giữa các máy chủ, sau đó bạn cũng sẽ xác minh bằng cách chèn dữ liệu vào một máy chủ và kiểm tra dữ liệu từ máy chủ khác.

Điều kiện tiên quyết​

Để hoàn thành hướng dẫn này, bạn phải có hai hoặc nhiều máy chủ đang chạy Rocky Linux 9. Bạn cũng phải có một người dùng không phải root có quyền quản trị viên sudo/root trên tất cả các máy chủ. Và SELinux cũng sẽ chạy ở chế độ cho phép.

Đối với ví dụ này, có ba máy chủ Rocky Linux 9 sẽ được sử dụng. Dưới đây là thông tin chi tiết về máy chủ:
Mã:
Hostname IP Address
--------------------------
pxc-rock01 192.168.5.80
pxc-rock02 192.168.5.81
pxc-rock03 192.168.5.82
Nếu tất cả các yêu cầu đã sẵn sàng, bạn có thể bắt đầu cài đặt Percona XtraDB Cluster.

Thiết lập /etc/hosts và Firewalld​

Trong bước đầu tiên này, bạn sẽ thiết lập tệp /etc/hosts và firewalld trên tất cả các máy chủ Rocky Linux. Bạn sẽ sửa đổi tệp /etc/hosts và thêm thông tin chi tiết về địa chỉ IP và tên máy chủ cho mỗi máy chủ, sau đó bạn sẽ thêm một số cổng sẽ được Percona XtraDB Cluster sử dụng.

Dưới đây là thông tin chi tiết về các cổng Percona XtraDB Cluster mà bạn phải mở trên tường lửa.
Mã:
Ports Used for
---------------------------
3306 MySQL client connection and SST (State Snapshot Transfer)
4444 SST via Percona XtraBackup
4567 write-set replication traffic (over TCP) and multicast replication (over TCP and UDP)
4568 IST (Incremental State Transfer)
Để bắt đầu, hãy mở tệp '/etc/hosts' bằng lệnh trình chỉnh sửa nano sau.
Mã:
sudo nano /etc/hosts
Thêm thông tin chi tiết về tên máy chủ và địa chỉ IP sẽ được sử dụng cho cụm. Hãy đảm bảo thay đổi các chi tiết với môi trường máy chủ của bạn.
Mã:
192.168.5.80 pxc-rock01
192.168.5.81 pxc-rock02
192.168.5.82 pxc-rock03
Lưu và đóng tệp khi hoàn tất.

Tiếp theo, nhập lệnh 'firewall-cmd' sau để thêm mạng con nội bộ của bạn làm nguồn đáng tin cậy. Với điều này, chỉ những mạng đáng tin cậy mới được phép truy cập vào tất cả các máy chủ.
Mã:
sudo firewall-cmd --permanent --add-source=192.168.5.0/24
Bây giờ hãy mở một số cổng cho Percona XtraDB Cluster và tải lại tường lửa để áp dụng các thay đổi. Đầu ra 'thành công' xác nhận rằng quy tắc mới đã được thêm vào firewalld.
Mã:
sudo firewall-cmd --add-port={3306/tcp,4444/tcp,4567/tcp,4567/udp,4568/tcp} --permanent
sudo firewall-cmd --reload
Cuối cùng, nhập lệnh 'firewall-cmd' sau để xác minh danh sách các quy tắc đã bật trên firewalld.
Mã:
sudo firewall-cmd --list-all
Đầu ra sau sẽ được in ra trên shell thiết bị đầu cuối của bạn. Hãy đảm bảo rằng tất cả các cổng sẽ được Percona XtraDB Cluster sử dụng đều được liệt kê.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22285%22%3E%3C/svg%3E


Với tệp /etc/hosts và tường lửa đã được cấu hình, tiếp theo bạn sẽ cài đặt các gói Percona XtraDB Cluster.

Cài đặt Percona XtraDB Cluster​

Trong phần này, bạn sẽ cài đặt Percona XtraDB Cluster trên tất cả các máy chủ Rocky Linux của mình. Bạn sẽ thiết lập kho lưu trữ Percona XtraDB, sau đó cài đặt gói Percona XtraDB Cluster. Ngoài ra, ở phần cuối, bạn sẽ thay đổi mật khẩu gốc MySQL mặc định trên tất cả các máy chủ của mình.

Đầu tiên, bạn phải thêm và kích hoạt kho lưu trữ EPEL. Nhập lệnh 'dnf install' sau để thêm kho lưu trữ EPEL.
Mã:
sudo dnf install epel-release
Bây giờ hãy nhập lệnh sau để cài đặt ứng dụng phát hành Percona. Nhập y khi được nhắc và nhấn ENTER để tiếp tục. Gói này cung cấp một công cụ dòng lệnh 'percona-release' có thể được sử dụng để quản lý kho lưu trữ Percona.
Mã:
sudo dnf install https://repo.percona.com/yum/percona-release-latest.noarch.rpm -y

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22181%22%3E%3C/svg%3E


Tiếp theo, hãy chạy lệnh 'percona-release' sau để kích hoạt kho lưu trữ Percona XtraDB Cluster v8.0. Trong quá trình này, bạn sẽ được nhắc tắt kho lưu trữ MySQL mặc định, nhập y để xác nhận và nhấn ENTER để tiếp tục.
Mã:
sudo percona-release setup pxc-80
Một thông báo đầu ra 'Hoàn tất!' xác nhận rằng thao tác đã thành công.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22184%22%3E%3C/svg%3E


Xác minh danh sách kho lưu trữ đã bật bằng cách nhập lệnh 'dnf repolist' bên dưới. Bạn sẽ thấy kho lưu trữ 'pxc-80-release' được bật và được liệt kê trên đầu ra với một số kho lưu trữ bổ sung như 'prel-release' và 'tools-release'.
Mã:
sudo dnf repolist

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22164%22%3E%3C/svg%3E


Bây giờ hãy nhập lệnh 'dnf install' sau để cài đặt gói Percona XtraDB Cluster. Nhập y khi được nhắc xác nhận và nhấn ENTER để tiếp tục.
Mã:
sudo dnf install percona-xtradb-cluster

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22427%22%3E%3C/svg%3E


Khi được nhắc chấp nhận khóa Percona GPG, nhập y và nhấn ENTER để xác nhận.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22710%22%20height=%22184%22%3E%3C/svg%3E


Sau khi Percona XtraDB Cluster được cài đặt, hãy nhập tiện ích lệnh systemctl sau để khởi động và kích hoạt dịch vụ MySQL.
Mã:
sudo systemctl start mysql
sudo systemctl enable mysql
Bây giờ hãy xác minh trạng thái dịch vụ MySQL bằng lệnh bên dưới. Đầu ra 'active (running)' xác nhận rằng MySQL đang chạy. Và đầu ra '..; được bật..' xác nhận rằng MySQL sẽ tự động khởi động khi hệ thống khởi động.
Mã:
sudo systemctl status mysql

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22260%22%3E%3C/svg%3E


Khi Percona XtraDB Cluster đang chạy, bây giờ bạn sẽ thay đổi mật khẩu gốc mặc định cho tất cả các máy chủ MySQL của mình.

Nhập lệnh sau để kiểm tra mật khẩu mặc định được tạo cho người dùng gốc MySQL của bạn. Sao chép mật khẩu gốc MySQL mặc định.
Mã:
sudo grep 'temporary password' /var/log/mysqld.log
Tiếp theo, đăng nhập vào shell MySQL thông qua lệnh 'mysql' bên dưới. Khi được nhắc nhập mật khẩu, hãy dán mật khẩu MySQL mặc định mà bạn đã sao chép.
Mã:
sudo mysql -u root -p
Sau khi đăng nhập, bạn sẽ thấy shell MySQL với lời nhắc như thế này 'mysql>'.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22269%22%3E%3C/svg%3E


Nhập MySQL sau truy vấn để thay đổi mật khẩu mặc định cho người dùng root MySQL, thoát và thoát.
Mã:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewP4ssr00tMySQL';
quit

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22678%22%20height=%22153%22%3E%3C/svg%3E


Cuối cùng, trước khi cấu hình Percona XtraDB Cluster, bạn phải dừng dịch vụ MySQL. Nhập tiện ích lệnh 'systemctl' sau để dừng dịch vụ MySQL trên tất cả các máy chủ.
Mã:
sudo systemctl stop mysql
Sau khi cài đặt Percona XtraDB Cluster, cấu hình gốc MySQL và dừng dịch vụ MySQL, giờ đây bạn đã sẵn sàng để cấu hình và thiết lập cụm.

Sao chép chứng chỉ SSL/TLS​

Kể từ Percona XtraDB Cluster 8.0, kết nối mặc định giữa các máy chủ trên cụm phải được mã hóa. Để thiết lập mã hóa giữa các máy chủ, bạn phải có cùng chứng chỉ SSL/TLS trên tất cả các máy chủ.

Trong phần này, bạn sẽ sao chép các chứng chỉ SSl/TLS được tạo mặc định từ máy chủ 'pxc-rock01' sang máy chủ 'pxc-rock02' và 'pxc-rock03'.

Trên máy chủ 'pxc-rock01', hãy nhập lệnh sau để xác minh các chứng chỉ khả dụng. Với điều này, bạn nên sao chép các tệp chứng chỉ 'server-cert.pem', 'server-key.pem' và 'ca.pem' vào cả máy chủ pxc-rock02pxc-rock03.
Mã:
ls /var/lib/mysql/*.pem

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22114%22%3E%3C/svg%3E


Di chuyển thư mục làm việc của bạn đến '/var/lib/mysql'.
Mã:
cd /var/lib/mysql
Bây giờ hãy nhập lệnh scp sau để sao chép các tệp chứng chỉ SSL/TLS vào cả pxc-rock02 và Máy chủ pxc-rock03.
Mã:
scp server-key.pem server-cert.pem ca.pem root@pxc-rock02:/var/lib/mysql
scp server-key.pem server-cert.pem ca.pem root@pxc-rock03:/var/lib/mysql
Dưới đây là kết quả trong quá trình sao chép chứng chỉ SSL/TLS từ máy chủ pxc-rock01 đến máy chủ pxc-rock02.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22170%22%3E%3C/svg%3E


Và bên dưới là kết quả trong quá trình sao chép chứng chỉ SSL/TLS từ pxc-rock01 đến máy chủ pxc-rock03.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22105%22%3E%3C/svg%3E

Khởi tạo Percona XtraDB Cluster trên pxc-rock01​

Đầu tiên, bạn sẽ khởi tạo Percona XtraDB Cluster từ máy chủ pxc-rock01. Để thực hiện điều này, bạn sẽ cần sửa đổi tệp cấu hình máy chủ MySQL '/etc/my.cnf', sau đó khởi động dịch vụ 'mysql@bootstrap'.

Mở tệp cấu hình MySQL '/etc/my.cnf' bằng lệnh trình chỉnh sửa nano sau.
Mã:
sudo nano /etc/my.cnf
Thêm danh sách địa chỉ IP máy chủ Percona XtraDB Cluster của bạn vào tham số 'wsrep_cluster_address' và thêm tham số 'default_storage_engine=InnoDB'.
Mã:
# Cluster connection URL contains the IPs of pxc-rock01, pxc-rock02, and pxc-rock03
wsrep_cluster_address=gcomm://192.168.5.80,192.168.5.81,192.168.5.82

# Using the MyISAM storage engine is not recommended.
default_storage_engine=InnoDB

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22684%22%20height=%22171%22%3E%3C/svg%3E


Thay đổi 'wsrep_node_address' bằng địa chỉ IP máy chủ hiện tại, 'wsrep_node_name' với tên máy chủ hệ thống và 'wsrep_cluster_name' với tên cụm của bạn sẽ là.
Mã:
# Node 1 address
wsrep_node_address=192.168.5.80
# Node Name
wsrep_node_name=pxc-rock01

# Cluster name
wsrep_cluster_name=pxc-cluster

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22672%22%20height=%22175%22%3E%3C/svg%3E


Cuối cùng, ở cuối dòng, thêm cấu hình sau để kích hoạt kết nối SSL/TLS an toàn giữa các máy chủ Percona XtraDB Cluster và kết nối sst.
Mã:
# enable ssl/tls connection
wsrep_provider_options="socket.ssl_key=server-key.pem;socket.ssl_cert=server-cert.pem;socket.ssl_ca=ca.pem"

[sst]
encrypt=4
ssl-key=server-key.pem
ssl-ca=ca.pem
ssl-cert=server-cert.pem

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22142%22%3E%3C/svg%3E


Lưu và đóng tệp khi hoàn tất.

Tiếp theo, nhập tiện ích lệnh systemctl sau để bắt đầu Dịch vụ 'mysql@bootstrap' và khởi tạo máy chủ Percona XtraDB Cluster đầu tiên.
Mã:
systemctl start [emailprotected]
Để xác minh và đảm bảo khởi tạo Percona XtraDB Cluster thành công, bạn nên đăng nhập vào shell MySQL và kiểm tra trạng thái 'wsrep%'.

Nhập lệnh 'mysql' sau để đăng nhập vào máy chủ MySQL với tư cách là người dùng 'root'. Nhập mật khẩu root MySQL mới của bạn khi được nhắc.
Mã:
sudo mysql -u root -p
Sau khi đăng nhập, hãy nhập truy vấn sau để kiểm tra trạng thái chi tiết 'wsrep%'.
Mã:
SHOW STATUS LIKE 'wsrep%';
Bạn sẽ nhận được kết quả như thế này - Trên phần 'wsrep_cluster_size' bạn sẽ thấy giá trị '1', nghĩa là Percona XtraDB Cluster được khởi tạo với máy chủ 1. Bạn cũng sẽ nhận được địa chỉ IP máy chủ trên phần 'wsrep_incoming_address'. Cuối cùng, nút ở trạng thái Đã đồng bộ, nghĩa là nó được kết nối hoàn toàn và sẵn sàng để sao chép tập lệnh ghi.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22704%22%20height=%22750%22%3E%3C/svg%3E


Với điều này, máy chủ đầu tiên của Percona XtraDB Cluster 'pxc-rock01' được khởi tạo. Ở bước tiếp theo, bạn sẽ thêm máy chủ 'pxc-rock02' và 'pxc-rock03' vào cụm.

Thêm Máy chủ pxc-rock02 vào Cụm Percona XtraDB​

Sau khi Cụm Percona XtraDb đầu tiên được khởi tạo, bây giờ bạn sẽ thêm máy chủ pxc-rock02 vào cụm. Cách thêm máy chủ vào Percona XtraDB Cluster tương tự như quá trình khởi tạo, bạn cần sửa đổi tệp cấu hình máy chủ MySQL mặc định '/etc/my.cnf' và xác định danh sách máy chủ cho cụm, sau đó khởi động dịch vụ MySQL bình thường.

Nhập lệnh nano editor sau để mở tệp cấu hình MySQL '/etc/my.cnf'.
Mã:
sudo nano /etc/my.cnf
Thêm danh sách địa chỉ IP máy chủ Percona XtraDB Cluster của bạn vào tham số 'wsrep_cluster_address' và thêm tham số 'default_storage_engine=InnoDB'.
Mã:
# Cluster connection URL contains the IPs of pxc-rock01, pxc-rock02, and pxc-rock03
wsrep_cluster_address=gcomm://192.168.5.80,192.168.5.81,192.168.5.82

# Using the MyISAM storage engine is not recommended.
default_storage_engine=InnoDB

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22684%22%20height=%22171%22%3E%3C/svg%3E


Thay đổi 'wsrep_node_address' bằng địa chỉ IP máy chủ hiện tại, 'wsrep_node_name' với tên máy chủ hệ thống và 'wsrep_cluster_name' với tên cụm của bạn sẽ là.
Mã:
# Node #2 address
wsrep_node_address=192.168.5.81
# Node Name
wsrep_node_name=pxc-rock02

# Cluster name
wsrep_cluster_name=pxc-cluster

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22683%22%20height=%22183%22%3E%3C/svg%3E


Cuối cùng, ở cuối dòng, hãy thêm cấu hình sau để kích hoạt kết nối SSL/TLS an toàn giữa các máy chủ Percona XtraDB Cluster và kết nối sst.
Mã:
# enable ssl/tls connection
wsrep_provider_options="socket.ssl_key=server-key.pem;socket.ssl_cert=server-cert.pem;socket.ssl_ca=ca.pem"

[sst]
encrypt=4
ssl-key=server-key.pem
ssl-ca=ca.pem
ssl-cert=server-cert.pem

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22142%22%3E%3C/svg%3E


Lưu và đóng tệp khi hoàn tất.

Tiếp theo, nhập tiện ích lệnh systemctl sau để khởi động dịch vụ MySQL. Thao tác này cũng sẽ khiến máy chủ 'pxc-rock02' tham gia vào Percona XtraDB Cluster đã khởi tạo.
Mã:
sudo systemctl start mysql
Cuối cùng, để đảm bảo rằng máy chủ pxc-rock02 được thêm vào Percona XtraDB Cluster, bạn phải đăng nhập vào shell MySQL với tư cách là người dùng root thông qua lệnh sau. Khi được nhắc, hãy nhập mật khẩu gốc MySQL của bạn.
Mã:
sudo mysql -u root -p
Bây giờ hãy nhập truy vấn sau để kiểm tra trạng thái chi tiết 'wsrep%'.
Mã:
SHOW STATUS LIKE 'wsrep%';
Bạn sẽ nhận được kết quả như thế này - Trên phần 'wsrep_cluster_size', bạn sẽ thấy giá trị '2', nghĩa là có hai máy chủ khả dụng trên Percona XtraDB Cluster. Bạn cũng sẽ nhận được địa chỉ IP máy chủ trên phần 'wsrep_incoming_address', đó là địa chỉ IP máy chủ pxc-rock01pxc-rock02. Cuối cùng, nút ở trạng thái Đã đồng bộ, nghĩa là nó được kết nối hoàn toàn và sẵn sàng để sao chép tập lệnh ghi.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22683%22%20height=%22750%22%3E%3C/svg%3E

Thêm máy chủ pxc-rock03 vào cụm Percona XtraDB​

Trong phần này, bây giờ bạn sẽ thêm máy chủ thứ ba pxc-rock03 vào cụm Percona XtraDB.

Mở tệp cấu hình '/etc/my.cnf' bằng trình chỉnh sửa nano sau lệnh.
Mã:
sudo nano /etc/my.cnf
Thêm danh sách địa chỉ IP máy chủ Percona XtraDB Cluster của bạn vào tham số 'wsrep_cluster_address' và thêm tham số 'default_storage_engine=InnoDB'.
Mã:
# Cluster connection URL contains the IPs of pxc-rock01, pxc-rock02, and pxc-rock03
wsrep_cluster_address=gcomm://192.168.5.80,192.168.5.81,192.168.5.82

# Using the MyISAM storage engine is not recommended.
default_storage_engine=InnoDB

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22684%22%20height=%22171%22%3E%3C/svg%3E


Thay đổi 'wsrep_node_address' bằng địa chỉ IP máy chủ hiện tại, 'wsrep_node_name' bằng tên máy chủ hệ thống và 'wsrep_cluster_name' bằng tên cụm của bạn sẽ là.
Mã:
# Node #3 address
wsrep_node_address=192.168.5.82
# Node Name
wsrep_node_name=pxc-rock02

# Cluster name
wsrep_cluster_name=pxc-cluster

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22670%22%20height=%22159%22%3E%3C/svg%3E


Cuối cùng, ở cuối dòng, hãy thêm cấu hình sau để kích hoạt kết nối SSL/TLS an toàn giữa các máy chủ Percona XtraDB Cluster và sst kết nối.
Mã:
# enable ssl/tls connection
wsrep_provider_options="socket.ssl_key=server-key.pem;socket.ssl_cert=server-cert.pem;socket.ssl_ca=ca.pem"

[sst]
encrypt=4
ssl-key=server-key.pem
ssl-ca=ca.pem
ssl-cert=server-cert.pem

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22142%22%3E%3C/svg%3E


Lưu và đóng tệp khi hoàn tất.

Tiếp theo, nhập tiện ích lệnh systemctl sau để khởi động dịch vụ MySQL và tham gia máy chủ hiện tại pxc-rock03 vào Percona XtraDB Cụm.
Mã:
sudo systemctl start mysql
Cuối cùng, nhập lệnh mysql sau để đăng nhập vào shell MySQL và xác minh trạng thái 'wsrep%'. Khi được nhắc, hãy nhập mật khẩu gốc MySQL của bạn.
Mã:
sudo mysql -u root -p
Bây giờ hãy nhập truy vấn sau để kiểm tra trạng thái chi tiết 'wsrep%'.
Mã:
SHOW STATUS LIKE 'wsrep%';
Bạn sẽ nhận được kết quả như thế này - Trên phần 'wsrep_cluster_size', bạn sẽ thấy giá trị '3', nghĩa là có ba máy chủ khả dụng trên Percona XtraDB Cluster. Bạn cũng sẽ nhận được địa chỉ IP máy chủ trên phần 'wsrep_incoming_address', đó là các địa chỉ IP máy chủ pxc-rock01, pxc-rock02pxc-rock03. Cuối cùng, nút ở trạng thái Đã đồng bộ, nghĩa là nó được kết nối hoàn toàn và sẵn sàng để sao chép tập lệnh ghi.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22652%22%3E%3C/svg%3E


Tại thời điểm này, bạn đã cấu hình Percona XtraDB Cluster với ba máy chủ Rocky Linux 9 khác nhau. Và với điều này, sao chép cơ sở dữ liệu sẽ hoạt động giữa máy chủ trên Percona XtraDB Cluster. Ở bước tiếp theo, bạn sẽ xác minh việc sao chép cơ sở dữ liệu của mình giữa nhiều máy chủ.

Kiểm tra sao chép cơ sở dữ liệu​

Trong phần này, bạn sẽ xác minh việc sao chép cơ sở dữ liệu trên Percona XtraDB CLuster. Điều này sẽ đảm bảo cài đặt của bạn thành công và hoàn tất.

Đầu tiên, hãy đăng nhập vào shell MySQL từ máy chủ pxc-rock02 và tạo một cơ sở dữ liệu mới có tên là 'testdb'.
Mã:
sudo mysql -u root -p
CREATE DATABASE testdb;

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22412%22%3E%3C/svg%3E


Bây giờ hãy chuyển đến máy chủ pxc-rock03, kết nối với shell MySQL thông qua người dùng root, sau đó thay đổi cơ sở dữ liệu làm việc mặc định thành 'testdb'.
Mã:
sudo mysql -u root -p
USE testdb;
Nhập truy vấn sau để tạo bảng mới có tên là 'table1'.
Mã:
CREATE TABLE table1 (node_id INT PRIMARY KEY, node_name VARCHAR(30));

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22412%22%3E%3C/svg%3E


Tiếp theo, di chuyển đến máy chủ pxc-rock01, đăng nhập vào shell MySQL, sau đó chèn dữ liệu mới vào cơ sở dữ liệu 'testdb' thông qua truy vấn 'INSERT' bên dưới.
Mã:
sudo mysql -u root -p
Mã:
INSERT INTO testdb.table1 VALUES (1, 'pxc-rock01');
INSERT INTO testdb.table1 VALUES (2, 'pxc-rock02');
INSERT INTO testdb.table1 VALUES (3, 'pxc-rock03');

data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22487%22%3E%3C/svg%3E


Sau khi dữ liệu được thêm vào, hãy di chuyển trở lại máy chủ pxc-rock02 và nhập truy vấn SELECT bên dưới để lấy tất cả dữ liệu có sẵn trên cơ sở dữ liệu 'testdb' và bảng 'table1'.
Mã:
SELECT * FROM testdb.table1;
Nếu sao chép là thành công, bạn sẽ có dữ liệu đã chèn của mình khả dụng trên máy chủ pxc-rock02. Dữ liệu của bạn sẽ được lưu trữ trong tất cả các máy chủ của Percona XtraDB Cluster.


data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%22750%22%20height=%22606%22%3E%3C/svg%3E


Điều này xác nhận rằng việc cài đặt Percona XtraDB Cluster trên máy chủ Rocky Linux 9 đã thành công.

Kết luận​

Bạn đã cài đặt và triển khai Percona XtraDB Cluster trong hướng dẫn này trên ba máy chủ Rocky Linux 9. Bạn đã học cách cài đặt Percona XtraDB Cluster, bảo mật triển khai thông qua firewalld, khởi tạo cụm và thêm các nút vào cụm.

Ngoài ra, bạn cũng đã bảo mật cài đặt Percona XtraDB Cluster bằng cách mã hóa lưu lượng giữa tất cả các máy chủ bằng chứng chỉ SSL/TLS và tùy chọn 'pxc-encrypt-cluster-traffic', được bật theo mặc định trên Percona XtraDB Cluster 8.0.

Với tùy chọn này, bạn có thể thêm nhiều máy chủ hơn vào Percona XtraDB Cluster hiện tại của mình bằng cách sử dụng các bước bạn đã học về cách thêm máy chủ pxc-rock02 và pxc-rock03. Hoặc bạn cũng có thể thiết lập cân bằng tải và tính khả dụng cao với các ứng dụng của bên thứ ba như ProxySQL và HAPROXY. Để tìm hiểu thêm, hãy truy cập tài liệu chính thức của Percona XtraDB Cluster.
 
Back
Bên trên