Mặc đinh khi restart thì Redis mất dữ liệu. Làm thế nào để tránh mất dữ liệu?
Có hai phương pháp khắc phục: sử dụng RDB (Redis Database) hoặc AOF (Append Only File)
Redis Database
RDB là phương pháp tạo snapshots và khôi phục dữ liệu thủ công bằng câu lệnh Redis, mặc định tệp tin snapshots tên là dump.rdb
. Để tạo snapshots bạn chạy câu lệnh SAVE
hoặc BGSAVE
, ví dụ:
save 30 500
Câu lệnh trên chỉ định Redis tự động tạo snapshots mỗi 30 giây nếu có ít nhất 500 key thay đổi.
Append Only File
AOF là cấu hình để Redis lưu toàn bộ write operation đã thực thi vào tệp tin. Khi Redis bị restart nó sẽ chạy lại tệp tin đó. Bạn bật AOF lên trong tệp tin cấu hình Redis như sau:
sudo nano /path/to/redis.conf
Tìm appendonly
và sửa thành yes
:
appendonly yes
Khi bạn bật thuộc tính này lên bất kì câu lệnh nào làm thay đổi dữ liệu Redis sẽ được lưu vào AOF. Lưu ý khi bật AOF có ảnh hưởng tới hiệu suất của Redis. Nếu máy chủ đủ mạnh thì bạn nên chạy câu lệnh snapshots từng giây, phương pháp này không gây ảnh hưởng tới hiệu suất của Redis. Tìm hiểu chi tiết tại Redis persistence.
Nếu bài viết có gì sai hoặc cần cập nhật thì liên hệ Admin.
Tham gia nhóm chat của DevOps VN tại Telegram.
Kém tiếng Anh và cần nâng cao trình độ giao tiếp: Tại sao bạn học không hiệu quả?