Áp dụng cho phiên bản Cloud Firestore Standard và Cloud Firestore Enterprise. |
Trang này mô tả cách khôi phục dữ liệu trong bản sao lưu vào một cơ sở dữ liệu có cùng tên với cơ sở dữ liệu nguồn của bản sao lưu. Trước khi đọc trang này, bạn nên làm quen với phần Sao lưu và khôi phục dữ liệu.
Khôi phục tại chỗ
Tính năng khôi phục tại chỗ cho phép bạn khôi phục cơ sở dữ liệu từ bản sao lưu vào cơ sở dữ liệu nguồn đã tạo bản sao lưu trong khi cơ sở dữ liệu gốc vẫn tồn tại. Tính năng khôi phục tại chỗ giúp bạn tránh định tuyến lại lưu lượng truy cập hoặc tạo cơ sở dữ liệu có tên khác.
Thao tác khôi phục phải sử dụng một cơ sở dữ liệu đích chưa tồn tại. Tuy nhiên, bạn có thể mô phỏng quy trình khôi phục tại chỗ bằng cách xoá cơ sở dữ liệu nguồn, sau đó khôi phục từ bản sao lưu sang một cơ sở dữ liệu mới có cùng tên với cơ sở dữ liệu nguồn.
Thực hiện khôi phục tại chỗ
Để thực hiện thao tác khôi phục tại chỗ, hãy làm theo các bước sau:
- Xác định bản sao lưu cần dùng cho thao tác khôi phục.
- Xoá cơ sở dữ liệu hiện có.
- Sử dụng bản sao lưu và mã cơ sở dữ liệu của cơ sở dữ liệu đã xoá để hoàn tất thao tác khôi phục.
Trước khi bắt đầu
Bạn nên hoàn tất các bước sau trước khi bắt đầu quy trình khôi phục tại chỗ.
Truy xuất và sao chép cấu hình chỉ mục của cơ sở dữ liệu. Sử dụng cấu hình chỉ mục để tạo lại chỉ mục sau khi bạn hoàn tất thao tác khôi phục tại chỗ. Sử dụng các lệnh sau để truy xuất cấu hình chỉ mục của cơ sở dữ liệu:
Sử dụng
gcloud firestore indexes composite list
để truy xuất danh sách các chỉ mục kết hợp:gcloud firestore indexes composite list --database=DATABASE_ID
Thay thế DATABASE_ID bằng mã nhận dạng cơ sở dữ liệu của bạn.
Sử dụng
gcloud firestore indexes fields list
để truy xuất danh sách các trường đơn (được tích hợp sẵn) được miễn lập chỉ mục.gcloud firestore indexes fields list --database=DATABASE_ID
Thực hiện khôi phục tại chỗ
Hoàn tất các bước sau để thực hiện thao tác khôi phục tại chỗ. Quá trình này cần có thời gian ngừng hoạt động giữa thời điểm bạn xoá cơ sở dữ liệu và khi thao tác khôi phục hoàn tất.
Sau khi bắt đầu thao tác khôi phục, bạn không thể huỷ thao tác này và phải đợi cho đến khi thao tác hoàn tất. Thao tác khôi phục sẽ chiếm ngay mã nhận dạng cơ sở dữ liệu được dùng trong thao tác đó.
Dùng lệnh
gcloud firestore backups list
để xác định bản sao lưu cần dùng cho thao tác khôi phục và ghi lại tên tài nguyên. Tên tài nguyên sử dụng định dạng sau:projects/PROJECT_ID/locations/LOCATION/backups/BACKUP_ID
Sử dụng lệnh
gcloud firestore databases delete
để xoá cơ sở dữ liệu hiện có:gcloud firestore databases delete --database='DATABASE_ID'
Thay thế DATABASE_ID bằng mã cơ sở dữ liệu.
Đợi ít nhất 5 phút sau khi bạn xoá cơ sở dữ liệu thì mã nhận dạng cơ sở dữ liệu mới có thể sử dụng lại. Bắt đầu thao tác khôi phục bằng lệnh
gcloud firestore databases restore
:gcloud firestore databases restore \ --source-backup=projects/PROJECT_ID/locations/LOCATION/backups/BACKUP_ID \ --destination-database='DATABASE_ID'
Thay thế DATABASE_ID bằng mã cơ sở dữ liệu.
Bước tiếp theo
- Tìm hiểu thêm về lịch sao lưu và thao tác khôi phục
- Tìm hiểu về cách định cấu hình tính năng khôi phục về một thời điểm nhất định (PITR)