> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# 자체 클라우드 계정으로 백업 내보내기

> 자체 Cloud 계정으로 백업을 내보내는 방법을 설명합니다

ClickHouse Cloud는 자체 클라우드 서비스 제공업체(CSP) 계정(AWS S3, Google Cloud Storage 또는 Azure Blob Storage)으로 백업을 내보내는 기능을 지원합니다.
"전체" 백업과 "증분" 백업의 차이를 포함해 ClickHouse Cloud 백업의 작동 방식에 관한 자세한 내용은 [백업](/docs/ko/products/cloud/guides/backups/review-and-restore-backups) 문서를 참조하십시오.

이 가이드에서는 AWS, GCP, Azure 객체 스토리지로 전체 및 증분 백업을 수행하는 방법과 해당 백업에서 복원하는 방법에 대한 예시를 보여드립니다.

<Note>
  동일한 클라우드 제공업체 내에서 백업을 다른 리전으로 내보내면 [데이터 전송](/docs/ko/products/cloud/reference/billing/network-data-transfer) 요금이 부과됩니다.

  클라우드 간 백업은 이 페이지에 설명된 백업/복원 명령을 통해서만 지원되며 UI에서는 지원되지 않습니다.
</Note>

<div id="requirements">
  ## 요구 사항
</div>

백업을 사용자의 CSP 스토리지 버킷으로 내보내거나 해당 버킷에서 복원하려면 다음 정보가 필요합니다.

<div id="aws">
  ### AWS
</div>

1. AWS S3 엔드포인트(형식은 다음과 같음):

```text theme={null}
  s3://<bucket_name>.s3.amazonaws.com/<directory>
```

예를 들어:

```text theme={null}
  s3://testchbackups.s3.amazonaws.com/backups/
```

여기서:

* `testchbackups`는 백업을 내보낼 S3 버킷의 이름입니다.
  * `backups`는 선택 사항인 하위 디렉터리입니다.

2. AWS 액세스 키와 시크릿 키. AWS 액세스 키와 시크릿 키 대신 역할 기반 인증도 지원합니다.

<Note>
  역할 기반 인증을 사용하려면 Secure s3 [설정](/docs/ko/products/cloud/guides/data-sources/accessing-s3-data-securely)을 따르십시오. 또한 [여기](/docs/ko/products/cloud/guides/data-sources/accessing-s3-data-securely#option-2-manually-create-iam-role)에 설명된 IAM 정책에 `s3:PutObject` 및 `s3:DeleteObject` 권한을 추가해야 합니다.
</Note>

<div id="azure">
  ### Azure
</div>

1. Azure 스토리지 연결 문자열.
2. 스토리지 계정의 Azure 컨테이너 이름.
3. 컨테이너의 Azure Blob.

<div id="google-cloud-storage-gcs">
  ### Google Cloud Storage (GCS)
</div>

1. 다음 포맷의 GCS 엔드포인트:

   ```text theme={null}
   https://storage.googleapis.com/<bucket_name>/
   ```
2. 액세스 HMAC 키와 HMAC 시크릿.

<hr />

<div id="backup-restore">
  ## 백업 / 복원
</div>

<div id="backup--restore-to-aws-s3-bucket">
  ## AWS S3 버킷에 백업 / 복원
</div>

<div id="take-a-db-backup">
  ### DB 백업 생성
</div>

**전체 백업**

```sql theme={null}
BACKUP DATABASE test_backups 
TO S3('https://testchbackups.s3.amazonaws.com/backups/<uuid>', '<key id>', '<key secret>')
```

여기서 `uuid`는 백업 세트를 구분하는 데 사용하는 고유 식별자입니다.

<Note>
  이 하위 디렉터리에서는 새 백업을 만들 때마다 다른 UUID를 사용해야 합니다. 그렇지 않으면 `BACKUP_ALREADY_EXISTS` 오류가 발생합니다.
  예를 들어 매일 백업하는 경우에는 매일 새로운 UUID를 사용해야 합니다.
</Note>

**증분 백업**

```sql theme={null}
BACKUP DATABASE test_backups 
TO S3('https://testchbackups.s3.amazonaws.com/backups/<uuid>', '<key id>', '<key secret>') 
SETTINGS base_backup = S3('https://testchbackups.s3.amazonaws.com/backups/<base-backup-uuid>', '<key id>', '<key secret>')
```

<div id="restore-from-a-backup">
  ### 백업에서 복원하기
</div>

```sql theme={null}
RESTORE DATABASE test_backups 
AS test_backups_restored 
FROM S3('https://testchbackups.s3.amazonaws.com/backups/<uuid>', '<key id>', '<key secret>')
```

참고: 자세한 내용은 [S3 엔드포인트를 사용하도록 BACKUP/RESTORE 구성하기](/docs/ko/concepts/features/backup-restore/s3-endpoint)를 참조하십시오.

<div id="backup--restore-to-azure-blob-storage">
  ## Azure Blob Storage로 백업 / 복원
</div>

<div id="take-a-db-backup">
  ### DB 백업 생성
</div>

**전체 백업**

```sql theme={null}
BACKUP DATABASE test_backups 
TO AzureBlobStorage('<AzureBlobStorage endpoint connection string>', '<container>', '<blob>/<uuid>');
```

여기서 `uuid`는 각 백업 세트를 구분하는 데 사용되는 고유 식별자입니다.

**증분 백업**

```sql theme={null}
BACKUP DATABASE test_backups 
TO AzureBlobStorage('<AzureBlobStorage endpoint connection string>', '<container>', '<blob>/<uuid>/my_incremental') 
SETTINGS base_backup = AzureBlobStorage('<AzureBlobStorage endpoint connection string>', '<container>', '<blob>/<uuid>')
```

<div id="restore-from-a-backup-1">
  ### 백업에서 복원
</div>

```sql theme={null}
RESTORE DATABASE test_backups 
AS test_backups_restored_azure 
FROM AzureBlobStorage('<AzureBlobStorage endpoint connection string>', '<container>', '<blob>/<uuid>')
```

참조: 자세한 내용은 [AzureBlobStorage 엔드포인트를 사용하도록 BACKUP/RESTORE 구성하기](/docs/ko/concepts/features/backup-restore/azure-blob-storage#configuring-backuprestore-to-use-an-azureblobstorage-endpoint) 문서를 참고하십시오.

<div id="backup--restore-to-google-cloud-storage-gcs">
  ## Google Cloud Storage (GCS)로 백업 / 복원하기
</div>

<div id="take-a-db-backup">
  ### DB 백업 생성
</div>

**전체 백업**

```sql theme={null}
BACKUP DATABASE test_backups 
TO S3('https://storage.googleapis.com/<bucket>/<uuid>', <hmac-key>', <hmac-secret>)
```

여기서 `uuid`는 백업 세트를 구분하는 데 사용되는 고유 식별자입니다.

**증분 백업**

```sql theme={null}
BACKUP DATABASE test_backups 
TO S3('https://storage.googleapis.com/test_gcs_backups/<uuid>/my_incremental', 'key', 'secret')
SETTINGS base_backup = S3('https://storage.googleapis.com/test_gcs_backups/<uuid>', 'key', 'secret')
```

<div id="restore-from-a-backup">
  ### 백업에서 복원하기
</div>

```sql theme={null}
RESTORE DATABASE test_backups 
AS test_backups_restored_gcs 
FROM S3('https://storage.googleapis.com/test_gcs_backups/<uuid>', 'key', 'secret')
```
