시점 복구
시점 복구 (Point-in-Time Recovery)
데이터베이스를 특정 시점의 상태로 되돌리는 기능이에요. 실수로 테이블을 지워버리는 같은 사용자 실수에서 복구할 때 아주 유용하답니다.
출처: 문서
본문
Turso는 데이터베이스를 위한 시점 복구(PITR, Point-in-Time Recovery)를 지원해요. PITR을 쓰면 데이터베이스를 특정 시점 상태로 복원할 수 있어요. 실수로 테이블을 드롭하는 같은 사용자 오류에서 복구할 때 정말 유용하답니다.
백업은
COMMIT시점에 자동으로 만들어져요. 무료 플랜 사용자는 최근 24시간 이내의 어느 시점으로든 복원할 수 있고, Developer·Scaler·Pro 사용자는 각각 최근 10일, 30일, 90일 이내의 어느 시점으로든 복원할 수 있어요.
PITR은 기존에 존재하는 데이터베이스를 복원하는 기능이에요 — 삭제된 데이터베이스는 되살릴 수 없어요. 유료 플랜에서는 삭제된 데이터베이스를 최대 5일 동안 복원할 수 있어요: 삭제된 데이터베이스 복구(Recover Deleted Databases)를 참고하세요.
동작 방식
- CLI나 API로 기존 데이터베이스를 기반으로 새 데이터베이스를 만들어요.
- 애플리케이션이 새 데이터베이스 연결 문자열을 쓰도록 업데이트해요.
- 더 이상 필요 없어진 옛 데이터베이스는 삭제해요.
사용 방법
CLI:
turso db create my-new-database --from-db my-existing-database --timestamp 2024-01-01T00:00:00Z
Platform API:
curl -L -X POST 'https://api.turso.tech/v1/organizations/{organizationSlug}/databases' \
-H 'Authorization: Bearer ***' \
-H 'Content-Type: application/json' \
-d '{
"name": "new-database",
"group": "default",
"seed": {
"type:": "database",
"name": "my-existing-database",
"timestamp": "2024-01-01T00:00:00Z"
}
}'
모든 인자에 대한 자세한 내용은 다음 레퍼런스를 참고하세요:
알아두면 좋은 것들
- PITR로 복원하면 새 데이터베이스가 만들어져요. 애플리케이션이 새 연결 문자열을 쓰도록 업데이트해야 해요.
- 이미 존재하는 데이터베이스로 PITR 복원은 할 수 없어요.
- 새 데이터베이스에 연결하려면 새 토큰을 만들거나 그룹 토큰을 사용해야 해요.
- 옛 데이터베이스가 더 이상 필요 없으면 직접 삭제해야 해요.
- 복원 작업도 플랜의 데이터베이스 할당량에 포함돼요.