Test Backup trên Postgresql

29-03-2025 Tags: services

TH1: 1 DB + Dump vào Server cũ

TH2: 1 DB + Dump vào Server mới

TH3: Dựng DB theo Cluster với 3 node sync live

ENV: Lab + 1GB network + chung một dải IP + Data sql 5GB

Cấu hình: 

**Server DB: 2 CPU 2GB RAM

Server Backup: 2 CPU 4GB RAM

Quy trình back up: dump ra sau đó copy file sang một server khác sau đó drop table và tìm các khôi phục. Tính thời gian từ lúc drop table cho đến khi khôi phục lại data.

TH1: 1 DB + Dump vào Server cũ

Một DB được tạo với tổng dung lượng là 5GB

**

Sau khi sử dụng pg_dump ta sẽ được một file có tổng dung lượng là 1.8GB

**

Sau đó sync to back-up server

**

Sau đó ta sẽ drop table ở server cũ Sau đó copy lại db từ server backup sang server vừa bị drop

Tổng thời gian off và khôi phục : 5 mins

TH2: 1 DB + Dump vào Server mới

Tạo một server mới Cài đặt DB only (postgresql) Tạo bảng có cấu trúc giống như cũ

** Sync data từ backup sang

**

Tổng thời gian dựng lại host và import DB : 10 mins

TH3: Dựng DB theo Cluster với 3 node sync live

Cấu hình

**Server DB (3 nodes): 2 CPU 2GB RAM Server Backup: 2 CPU 4GB RAM

Sau khi nén db 6G được file sql 2GB sau đó sync qua backup server

**

Drop table ở server chính Sau đó sync file backup từ server back up đến node chính Sau đó sử dụng pg_restorre để khôi phục lại

**

Tổng thời gian để cả 3 server có cùng lượng data backup: 13 mins

Note: Test chỉ apply với mỗi database chưa có kết nối với services. Trong thực tế, thời gian để service chạy lại có thể lâu hơn so với chỉ restore lại back up sql data.