Thông báo phát hành NukeViet

Hướng dẫn cấu hình MySQL Replication Master-Slave Cho NukeViet

Thứ ba - 05/07/2016 05:57
Bài viết này hướng dẫn cấu hình MySQL triển khai kiến trúc máy chủ Master-Slave. Mọi thay đổi trên MySQL master đều được thực hiện trên MySQL slave, luôn luôn đảm bảo dữ liệu trên MySQL master và MySQL slave là giống nhau.

Bài viết này dành cho các bạn quản trị hệ thống, cần có Server riêng. Với bản NukeViet 4 khi cấu hình Master-Slave hệ thống có thể chạy cả DB Slave  tránh quá tải cho DB Master

1. Replication là gì?

Replication có ý nghĩa là “nhân bản”, là có một phiên bản giống hệt phiên bản đang tồn tại, đang sử dụng.

Với cơ sở dữ liệu, nhu cầu lưu trữ lớn, đòi hỏi cơ sở dữ liệu toàn vẹn, không bị mất mát trước những sự cố ngoài dự đoán là rất cao. Vì vậy, người ta nghĩ ra khái niệm “nhân bản”, tạo một phiên bản cơ sở dữ liệu giống hệt cơ sở dữ liệu đang tồn tại, và lưu trữ ở một nơi khác, đề phòng có sự cố.

Phiên bản cơ sở dữ liệu phục vụ ứng dụng được lưu trữ trên server master. Phiên bản cơ sở dữ liệu “nhân bản” được lưu trữ trên server slave. Quá trình nhân bản từ master sang slave gọi là replication.

Khi có một thay đổi trên cơ sở dữ liệu master, master sẽ ghi xuống log file (log ở dạng binary). Slave đọc log file, thực hiện những thao tác trong log file. Việc ghi, đọc log theo dạng binary được thực hiện rất nhanh.

2. Mô hình MySQL replication gồm có 2 thành phần:

  • MySQL master
  • MySQL slave
master slave

3. Cách thức hoạt động:

Tại thời điểm hoạt động bình thường mọi request thay đổi CSDL sẽ được đưa đến vào MySQL master. Các request chỉ đọc sẽ được điều hướng qua MySQL slave.

Khi MySQL master gặp sự cố, sẽ cần cấu hình lại MySQL slave thành MySQL master.

4. Các bước cấu hình:

Tham khảo chi tiết tại: https://github.com/VietOpenCPS/deploy/tree/master/opencps-mariadb-master-slave

Tại bước  #ImportDatabase.sh bạn sẽ cần thay bằng CSDL bạn đang dùng.

Sau khi cài đặt thành công MariaDB Master-Slave, cần sửa file includes/plugin/mysql_master_slave.php sau đó kích hoạt plugin trong phần cấu hình của NukeViet để site có thể dùng cả được Master-Slave

Tham khảo:
http://how.vndemy.com/databases/mysql/193-huong-dan-cau-hinh-mysql-replication-master-slave/
https://github.com/VietOpenCPS/deploy/tree/master/opencps-mariadb-master-slave

Tổng số điểm của bài viết là: 5 trong 1 đánh giá

Xếp hạng: 5 - 1 phiếu bầu
Click để đánh giá bài viết

  Ý kiến bạn đọc

  • Nguyễn Tú
    Ad ơi, cho mình hỏi trên NukeViet có replicate source giữa 2 con server web được không? Nếu cho server Nukeviet1 kết nối db nằm trên con server khác có được không hay phải db ở localhost?. Mong sớm nhận phản hồi của Ad. Cám ơn nhiều.
      Nguyễn Tú   21/06/2017 23:51

Những tin mới hơn

Những tin cũ hơn

Bạn đã không sử dụng Site, Bấm vào đây để duy trì trạng thái đăng nhập. Thời gian chờ: 60 giây