Sao chép MySQL là một cơ chế thời gian thực tự động sao chép hoặc sao chép dữ liệu từ máy chủ này sang máy chủ dự phòng khác. Quản trị viên cơ sở dữ liệu có thể sử dụng quy trình sao chép chủ-tớ để sao chép hoặc sao chép dữ liệu từ nhiều máy chủ cùng một lúc
Điều này cho phép quản trị viên cơ sở dữ liệu tạo bản sao lưu trực tiếp liên tục của cơ sở dữ liệu. Họ có thể chuyển qua cơ sở dữ liệu nô lệ và duy trì hoạt động của ứng dụng trong nhiều tình huống khác nhau khi gặp sự cố. Ứng dụng của bạn sẽ không gặp bất kỳ thời gian chết nào do quy trình sao chép
Làm thế nào nó hoạt động
Có nhiều loại thủ tục sao chép khác nhau trong bản sao này. Bạn có thể có một chủ và nhiều nô lệ, hoặc nhiều chủ và nhiều nô lệ, v.v.
Nó luôn luôn là truyền dữ liệu một chiều hoặc một chiều trong hoạt động này. Dữ liệu ban đầu được lưu trong tổng thể, sau đó được sao chép sang các nô lệ. Do đó, thao tác ghi được giới hạn trong cơ sở dữ liệu chính. Cả chủ và nô lệ đều thực hiện thao tác đọc. Các nô lệ cũng có thể được sử dụng để giảm thiểu sự căng thẳng cho cơ sở dữ liệu chủ bằng cách cung cấp khả năng truy cập dữ liệu
Mục đích của sao chép Master-Slave
Một trong những ưu điểm chính của hệ thống sao chép chủ-tớ là nó cung cấp một hệ thống dự phòng với bản sao lưu trực tiếp có thể được thăng cấp lên trạng thái chính nếu máy chủ chính bị lỗi
Nó cũng có một số lợi thế khác, chẳng hạn như
- khả năng mở rộng. Để giảm tải cho máy chủ và cung cấp khả năng truy cập nhanh hơn, tất cả các yêu cầu truy vấn cơ sở dữ liệu có thể được gửi đến nhiều máy chủ cơ sở dữ liệu. Hầu hết các ứng dụng web và trang web mà bạn sẽ gặp ngày nay có nhiều hoạt động đọc hơn là ghi các hoạt động vào cơ sở dữ liệu. Do đó, quản trị viên trang web phải đưa ra sự sắp xếp lý tưởng để tải nhanh thông tin trên trang web
- Hiệu suất. Cơ sở dữ liệu chủ xử lý tất cả các hoạt động ghi cơ sở dữ liệu. Những thay đổi này được chủ nhân truyền bá và quảng bá cho nô lệ sau khi chúng được thực hiện với cơ sở dữ liệu chủ. Tuy nhiên, các yêu cầu đọc từ các trang web có thể được chia thành nhiều nô lệ để cải thiện tốc độ của trang web
- Sao lưu. Chỉ trong vài phút, bạn có thể sao chép ảnh chụp nhanh cơ sở dữ liệu gần đây nhất sang cơ sở dữ liệu khác và tạo bản sao lưu. Dữ liệu bị hỏng do máy chủ chính không có lỗi và có 99. 9% thời gian hoạt động. Điều này cho phép các ứng dụng xử lý số lượng lớn thao tác đọc và ghi một cách dễ dàng
- Phân tích và đo điểm chuẩn. Các nhà phân tích cơ sở dữ liệu có thể sử dụng phương pháp này để thực hiện các thử nghiệm và thử nghiệm phân tích dữ liệu khác nhau trên các nô lệ mà không làm gián đoạn chủ
Các bước để đạt được bản sao MySQL Master-Slave
Trong cấu hình này, chúng tôi sẽ có hai máy chủ RHEL 8 với các địa chỉ IP sau
Phiên bản mới nhất của MySQL 8. x đã được bao gồm trong kho lưu trữ mặc định của RHEL 8 và bạn có thể cài đặt nó bằng lệnh yum sau
Thiết lập máy chủ MySQL Master
Khi quá trình cài đặt MySQL hoàn tất, hãy chạy lệnh sau để mở tệp cấu hình MySQL
vim/etc/của tôi. cnfThêm các dòng được đề cập bên dưới vào phần “mysqld”
địa chỉ liên kết = 172. 17. 0. 8
Id máy chủ = 1
Log_bin = mysql-bin
Sau đó, dịch vụ MySQL sẽ được khởi động lại
systemctl khởi động lại mysqldBây giờ chúng ta sẽ tạo một người dùng sao chép. Do đó, hãy đăng nhập với tư cách người dùng root vào máy chủ chính MySQL của bạn và nhập mật khẩu
mysql -u gốc -pChạy các lệnh sau để tạo người dùng bản sao đồng thời cung cấp quyền truy cập nô lệ của người dùng. Hãy ghi nhớ để sử dụng địa chỉ IP của máy của bạn
Bây giờ bạn sẽ gõ lệnh sau, lệnh này sẽ in tên tệp nhị phân và vị trí
Theo dõi tên tệp được tạo mysql-bin. 000001 và vị trí của nó 683
Thiết lập máy chủ nô lệ MySQL
Bạn nên thực hiện các thay đổi sau đối với tệp cấu hình nô lệ mysql, giống như bạn đã làm khi thiết lập chính
địa chỉ liên kết = 172. 17. 0. 8
Id máy chủ = 2
Log_bin = mysql-bin
Sau đó khởi động lại dịch vụ
systemctl khởi động lại mysqldMáy chủ phụ hiện phải được cấu hình để sao chép từ máy chủ chính. Sau đó, dừng chuỗi sao chép và kết nối với máy chủ MySQL
mysql> DỪNG NÔ LỆ;
Chạy truy vấn sau để thiết lập máy chủ phụ để sao chép từ máy chủ chính
Kiểm tra xem bạn có đang sử dụng đúng tên người dùng và mật khẩu IP không. Sử dụng cả tên tệp và vị trí mà bạn nhận được từ máy chủ chính. Cuối cùng, chạy lệnh bên dưới để bắt đầu chuỗi nô lệ
mysql> BẮT ĐẦU NÔ LỆ;
Đặt bản sao MySQL Master-Slave vào thử nghiệm
Bây giờ bạn đã hoàn thành cấu hình của cả máy chủ chính và máy chủ phụ, đã đến lúc kiểm tra xem cấu hình có đúng không và liệu có thể sao chép hay không
Để làm như vậy, hãy chuyển đến máy chủ chính và kết nối với máy chủ cơ sở dữ liệu MySQL. Tạo cơ sở dữ liệu mẫu
Bây giờ hãy truy cập máy chủ nô lệ và đăng nhập vào máy chủ cơ sở dữ liệu MySQL một lần nữa. Sử dụng lệnh sau để liệt kê tất cả các cơ sở dữ liệu
Thiết lập đơn giản
Bạn sẽ có thể thiết lập bản sao chính-phụ trong MySQL và bắt đầu các chuỗi phụ sau khi đọc hướng dẫn này. Giờ đây, bạn có thể sao lưu, giữ và thay đổi dữ liệu trên nhiều PC. Để biết thêm thông tin, hãy liên hệ với các chuyên gia của chúng tôi ngay hôm nay