Azure Blob Storage로/에서 BACKUP/RESTORE

Azure Blob Storage로/에서 BACKUP/RESTORE

ClickHouse BACKUP/RESTORE 문은 Azure Blob Storage를 백업/복원 대상으로 지원합니다. 이 문서에서는 AzureBlobStorage 엔드포인트로 백업하는 구문과 설정 방법을 설명할게요.

출처: 문서

본문

구문

-- 핵심 명령
BACKUP | RESTORE 
--- 무엇을 백업/복원할지 (또는 제외할지)
TABLE [db.]table_name           [AS [db.]table_name_in_backup] |
DICTIONARY [db.]dictionary_name [AS [db.]name_in_backup] |
DATABASE database_name          [AS database_name_in_backup] |
TEMPORARY TABLE table_name      [AS table_name_in_backup] |
VIEW view_name                  [AS view_name_in_backup] |
[EXCEPT TABLES ...] |
ALL [EXCEPT {TABLES|DATABASES}...] } [,...]
--- 
[ON CLUSTER 'cluster_name']
--- 어디에서 백업하거나 복원할지
TO|FROM 
File('<path>/<filename>') | 
Disk('<disk_name>', '<path>/') | 
S3('<S3 endpoint>/<path>', '<Access key ID>', '<Secret access key>', '<extra_credentials>') |
AzureBlobStorage('<connection string>/<url>', '<container>', '<path>', '<account name>', '<account key>')
--- 추가 설정
[SETTINGS ...]
[ASYNC]

각 명령의 자세한 내용은 “명령 요약(command summary)”을 참고하세요.

AzureBlobStorage 엔드포인트를 사용하도록 BACKUP / RESTORE 설정하기

백업을 AzureBlobStorage 컨테이너에 쓰려면 다음 정보가 필요합니다:

  • AzureBlobStorage 엔드포인트 연결 문자열 / url,
  • 컨테이너 (Container),
  • 경로 (Path),
  • 계정 이름 (Account name) (url이 지정된 경우)
  • 계정 키 (Account Key) (url이 지정된 경우)

백업 대상은 다음과 같이 지정됩니다:

AzureBlobStorage('<connection string>/<url>', '<container>', '<path>', '<account name>', '<account key>')
BACKUP TABLE data TO AzureBlobStorage('DefaultEndpointsProtocol=http;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=http://azurite1:10000/devstoreaccount1/;',
    'testcontainer', 'data_backup');
RESTORE TABLE data AS data_restored FROM AzureBlobStorage('DefaultEndpointsProtocol=http;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=http://azurite1:10000/devstoreaccount1/;',
    'testcontainer', 'data_backup');

더 알아보기 (Learn more)