> ## Documentation Index
> Fetch the complete documentation index at: https://ayakaleaf-pro.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Redis

### Bật xác thực bằng mật khẩu

Nếu bạn đang sử dụng dịch vụ Redis bên ngoài và cần cung cấp mật khẩu, bạn có thể làm điều này bằng cách đặt các biến môi trường `OVERLEAF_REDIS_PASS` và `REDIS_PASSWORD` trong tệp **config/variables.env** và chạy lệnh `bin/up -d` để tạo lại container **sharelatex**.

Nếu bạn đang chạy một phiên bản Redis cục bộ, bạn sẽ cần cấu hình dịch vụ **redis** để khởi động với xác thực bằng mật khẩu. Sau khi đặt các biến môi trường ở trên, bạn cũng cần hoàn thành các bước bổ sung sau:

Tạo tệp **docker-compose.override.yml** trong thư mục <strong>config/</strong> với nội dung sau:

```yaml title="config/docker-compose.override.yml" theme={null}
services:
    redis:
        command: "redis-server --requirepass <YOUR-PASSWORD>"
```

<Warning>
  Nếu bạn đã bật cơ chế lưu trữ bền vững AOF, bạn cần thêm `--appendonly yes` vào `command`.
</Warning>

Chạy `bin/up -d` để tạo lại các container.

### Bật lưu trữ bền vững Append-Only File

(Bản gốc: [https://docs.overleaf.com/on-premises/configuration/overleaf-toolkit/redis#enabling-append-only-file-persistence](https://docs.overleaf.com/on-premises/configuration/overleaf-toolkit/redis#enabling-append-only-file-persistence))

Cơ chế lưu trữ bền vững Redis AOF (Append-Only File) cung cấp một cách mạnh mẽ để đảm bảo độ bền dữ liệu bằng cách ghi nhật ký mọi thao tác ghi mà máy chủ nhận được. Không giống như ảnh chụp RDB, vốn tạo bản sao tập dữ liệu tại một thời điểm, AOF lưu giữ bản ghi đầy đủ về mọi thay đổi đối với dữ liệu của bạn.

<Info>
  Việc tắt RDB là tùy chọn. Nhìn chung, bạn nên sử dụng đồng thời cả hai phương thức lưu trữ bền vững. Trước khi thực hiện bất kỳ thay đổi nào trên môi trường production, hãy xem xét ưu và nhược điểm của việc chạy AOF và RDB cùng nhau.
</Info>

Bạn có thể đọc thêm về việc bật lưu trữ bền vững AOF trong Redis tại đây: [https://redis.io/docs/latest/operate/oss\_and\_stack/management/persistence/#how-i-can-switch-to-aof-if-im-currently-using-dumprdb-snapshotsarrow-up-right](https://redis.io/docs/latest/operate/oss_and_stack/management/persistence/#how-i-can-switch-to-aof-if-im-currently-using-dumprdb-snapshotsarrow-up-right)

1. Lên lịch một khung thời gian bảo trì cho việc nâng cấp.
2. Dừng phiên bản bằng `bin/stop` và sao lưu các thư mục <strong>config/</strong> và <strong>data/</strong>.
3. Chạy `bin/up` để khởi động phiên bản
4. Chạy lệnh `docker exec -it redis sh`
5. Chạy lệnh `redis-cli` để mở giao diện dòng lệnh Redis
6. Trong redis-cli, chạy lệnh `config set appendonly yes`
7. Bây giờ bạn cần đợi quá trình viết lại AOF hoàn tất việc lưu dữ liệu. Bạn có thể làm điều đó bằng cách gõ `INFO persistence` vào redis-cli và đợi cho đến khi `aof_rewrite_in_progress` và `aof_rewrite_scheduled` bằng `0`, đồng thời xác nhận rằng `aof_last_bgrewrite_status` là `ok`.
8. Thoát redis-cli bằng cách gõ `exit` và nhấn phím Enter
9. Thoát container redis bằng cách gõ `exit` và nhấn phím Enter
10. Chạy lệnh `ls ./data/redis` và xác nhận rằng bạn có thể thấy tệp **appendonly.aof**
11. Chỉnh sửa tệp **config/overleaf.rc** và đổi biến môi trường `REDIS_AOF_PERSISTENCE` từ `false` thành `true`
12. Chạy `bin/up -d` và đảm bảo ứng dụng hoạt động bình thường (trình soạn thảo dự án và bảng lịch sử hoạt động được).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.