close

MariaDB Advance: Reduction Disk BINARY LOGS & Relay Log (MariaDB Replication)

Tác giả: Dương Xuân Ngày cập nhật: 05/08/2020 Chuyên mục:
Disclosure
Website Wiki.tino.org được cung cấp bởi Tino Group. Truy cập và sử dụng website đồng nghĩa với việc bạn đồng ý với các điều khoản và điều kiện trong chính sách bảo mật - điều khoản sử dụng nội dung. Wiki.tino.org có thể thay đổi điều khoản sử dụng bất cứ lúc nào. Việc bạn tiếp tục sử dụng Wiki.tino.org sau khi thay đổi có nghĩa là bạn chấp nhận những thay đổi đó.
Why Trust Us
Các bài viết với hàm lượng tri thức cao tại wiki.tino.org được tạo ra bởi các chuyên viên Marketing vững chuyên môn và được kiểm duyệt nghiêm túc theo chính sách biên tập bởi đội ngũ biên tập viên dày dặn kinh nghiệm. Mọi nỗ lực của chúng tôi đều hướng đến mong muốn mang đến cho cộng đồng nguồn thông tin chất lượng, chính xác, khách quan, đồng thời tuân thủ các tiêu chuẩn cao nhất trong báo cáo và xuất bản.

Trong  quá trình hoạt động của hệ thống MariaDB Replication  bạn sẽ gặp vấn  đề liên quan đến disk hệ thông thống khi các file Binary Log trên server matster và Relay Log trên các server slaver  gia tăng kích thước và  tổng số file log dẫn đến full disk  hệ thống. Để tránh tình trạng này thì bạn có thể cấu hình thêm các tham số hệ  thống để quy định disk được xử lý  cho các hoạt  động ghi log Replication.

Cấu hình quy định BINARY LOGS trên Master server

Trên mater server  MariaDB chỉ có 1 cấu hình duy nhất quy định số ngày sau đó BINARY LOGS có thể được tự động xóa. Theo mặc định 0 có nghĩa là không loại bỏ tự động. Khi sử dụng relication, phải luôn luôn  đặt giá trị̣ này  cao hơn độ trễ tối đa bởi bất kỳ máy chủ Slaver nào khác. Việc xóa sẽ diễn ra khi máy chủ khởi động, khi BINARY LOGS bị xóa, BINARY LOGS tiếp  theo sẽ được tạo ra cho đến khi kích thước file log này đạt đến giới hạn hoặc thực hiện PURGE BINARY LOGS thủ công sẽ xóa file trên hoặc tiếp tục tạo ra file mới và được đánh số thứ tự tăng dần để các Slaver có thể̉ đọc tiếp.

Ví dụ cấu hình sau trên my.cnf để quy định xóa các file BINARY LOGS có tuổi quá 8 ngày:

expire-logs-days=8

Cấu hình Relay Log treen Slaver server

Trên Slaver server có 2 thông số cấu hình để hạn chế   lạm dụng disk là relay_log_purge  và relay_log_space_limit .

Relay Log cũ sẽ tự động bị xóa sau khi tất cả các sự kiện đã được thực hiện trên Slave và Relay Log không còn cần thiết nữa. Hành vi này có thể được thay đổi bằng cách điều chỉnh biến hệ thống Relay_log_purge từ mặc định là 1 thành 0, trong trường hợp đó, nhật ký chuyển tiếp sẽ được để lại trên máy chủ.

Nếu các Relay Log đang chiếm quá nhiều không gian trên Slaver, biến hệ thống Relay_log_space_limit có thể được đặt để giới hạn kích thước. Luồng IO sẽ dừng cho đến khi luồng SQL xóa phần tồn đọng. Theo mặc định không có giới hạn.

Trong ví dụ sau ta sẽ cấu hình không xóa Relay Log khi dùng xong và chỉ quy định giới hạn 5GB Disk được sử dụng cho việc ghi Relay Log, các log  cũ nhất sẽ được xóa khỏi Slave:

relay-log-purge=1
relay-log-space-limit=5G

Với các cấu hình trên hy vọng bạn sẽ không còn gặp lỗi full disk do  log hệ thống Replicate gây ra.

Bài viết liên quan

CÔNG TY CỔ PHẦN TẬP ĐOÀN TINO
Trụ sở chính: L17-11, Tầng 17, Tòa nhà Vincom Center, Số 72 Lê Thánh Tôn,  Phường Bến Nghé, Q. 1, TP. Hồ Chí Minh

Văn phòng kinh doanh: Số 42 Trần Phú, Phường 4, Quận 5, TP HCM
GPKD số 0315679836 do Sở KH và ĐT TP Hồ Chí Minh cấp
Hotline: 0364 333 333
Góp ý/Phản ánh dịch vụ: 0933 000 886