Cloud SQL을 사용하면 주문형으로 또는 백업 일정을 사용하여 자동으로 인스턴스를 백업할 수 있습니다. 인스턴스에 사용할 수 있는 백업 구성은 인스턴스의 백업 옵션에 따라 다릅니다. Cloud SQL 백업은 증분 백업이며 손실된 데이터를 Cloud SQL 인스턴스로 복원하는 데 도움이 됩니다. 백업도 기본적으로 Google 관리 또는 고객 관리 암호화 키 (CMEK)를 통해 암호화됩니다. 백업을 사용하면 다음 작업을 할 수 있습니다.
- 인스턴스에서 문제가 발생하면 인스턴스를 이전 상태로 복원합니다.
- 다른 리전이나 영역의 백업을 사용하여 새 인스턴스를 만들어 재해 복구(DR)를 설정합니다.
- 개발, 테스트, 마이그레이션 시 도움이 되도록 백업을 사용하여 인스턴스를 여러 개 만듭니다.
인스턴스의 백업 보관 설정을 정의하여 이러한 백업을 유지할 수 있습니다. 보관 설정은 인스턴스의 Cloud SQL 버전 및 백업 옵션에 따라 다를 수 있습니다. 또한 인스턴스가 삭제된 후에도 백업을 보관하여 삭제 후 인스턴스를 복원할 수 있습니다.
백업 옵션
Cloud SQL은 인스턴스의 백업을 관리할 수 있는 두 가지 백업 서비스 옵션을 제공합니다.
- 고급 백업: 백업은 백업 및 DR 서비스를 활용하는 중앙 집중식 백업 관리 프로젝트에서 관리 및 저장되며 적용된 보관, 세분화된 예약, 모니터링을 제공합니다.
- 표준 백업: 백업이 Cloud SQL 인스턴스와 동일한 프로젝트에서 생성, 관리, 저장됩니다. 기존 Cloud SQL 백업 제품이며 이제 표준 백업이라고 합니다.
각 인스턴스에 백업 옵션을 선택해야 합니다. 각 백업 옵션과 기능에 대한 자세한 내용은 백업 옵션 선택하기를 참고하세요.
백업 요청 유형
Cloud SQL 인스턴스의 주문형, 자동 또는 최종 백업을 수행할 수 있습니다. 이러한 백업에 사용할 수 있는 구성은 인스턴스에서 선택한 백업 옵션에 따라 다릅니다.
주문형 백업
주문형 백업은 언제든지 만들 수 있는 백업입니다. 이는 데이터베이스에서 위험 부담이 있는 작업을 수행하거나 백업이 필요하지만 백업 기간까지 기다리고 싶지 않은 경우에 유용합니다. 인스턴스에 자동 백업이 사용 설정되어 있는지 여부와 관계없이 인스턴스의 주문형 백업을 만들 수 있습니다.
자동 백업
인스턴스가 실행되는 동안 자동 백업은 시간, 일, 주 또는 월과 같은 예약된 주기로 실행됩니다. 예약된 주기는 인스턴스에 선택한 백업 옵션과 선택한 백업 옵션의 백업 구성에서 정의한 주기에 따라 다릅니다. 백업은 백업 기간 중에 시작됩니다.
인스턴스가 중지되기 전에 모든 변경사항을 보호하기 위해 인스턴스가 중지된 후 추가 자동 백업이 한 번 수행됩니다. 자동 백업 보관은 인스턴스에 선택한 백업 옵션에서 구성된 보관 정책에 따라 달라집니다. 가능하면 인스턴스의 활동이 적을 때 백업을 예약하는 것이 좋습니다.
자동 백업은 PITR(point-in-time recovery)을 지원하는 데 필요하므로 자동 백업을 수동으로 삭제하지 않는 것이 좋습니다.
인스턴스의 자동 백업을 구성하려면 자동 백업 구성을 참고하세요.
최종 백업
최종 백업을 사용하면 인스턴스를 삭제하기 전에 Cloud SQL 인스턴스를 백업할 수 있습니다. 이는 인스턴스를 삭제한 후 인스턴스 데이터를 보존하는 데 유용합니다. 최종 백업을 사용하여 새 인스턴스를 만들거나 기존 인스턴스로 복원할 수 있습니다. 최종 백업에 대한 세부정보에 액세스하고 보는 방법에 대한 자세한 내용은 최종 백업 목록 보기를 참고하세요.
인스턴스의 최종 백업 사용 설정 인스턴스 설정을 사용 설정하면 인스턴스를 삭제할 때 인스턴스에서 자동으로 최종 백업을 수행하도록 설정할 수 있습니다. 인스턴스 최종 백업을 사용 설정할 때 최종 백업 보관 기간을 설정할 수도 있습니다. 인스턴스에 최종 백업을 사용 설정하지 않으면 인스턴스를 삭제할 때 최종 백업을 수행할 수도 있습니다. 최종 백업은 기본 인스턴스에만 사용 가능하며 복제본에는 지원되지 않습니다. Cloud SQL 커스텀 조직 정책을 설정하여 조직의 모든 인스턴스에 대해 인스턴스 삭제 시 최종 백업을 수행하고 표준 보관 기간을 설정할 수도 있습니다. 자세한 내용은 일반적인 사용 사례의 커스텀 조직 정책 예시를 참조하세요.
기본적으로 Cloud SQL은 최종 백업을 30일 동안 보관합니다. 하지만 Cloud SQL에서 백업을 보관하는 기간을 맞춤설정할 수 있습니다. 범위는 표준 백업의 경우 1일~365일, 고급 백업의 경우 1일~99년입니다. 그런 다음 사용 가능한 한 백업에서 인스턴스를 복원할 수 있습니다. 최종 백업에 대한 요금은 다른 백업과 마찬가지로 보관된 일수에 따라 청구됩니다.
표준 백업 옵션을 사용하여 새 인스턴스 또는 기존 인스턴스에 최종 백업을 사용 설정하는 방법에 관한 자세한 내용은 최종 백업 구성을 참고하세요. 고급 백업의 경우 최종 백업은 연결된 백업 계획에 의해 관리됩니다.
인스턴스가 삭제된 후 최종 백업을 관리하려면 삭제된 인스턴스의 백업 관리를 참고하세요.
백업 보관
백업 보관은 백업 요청 유형과 인스턴스에 선택한 백업 옵션에 따라 정의됩니다. 자동 백업의 경우 인스턴스의 백업 옵션에 따라 보관 기간이 1일에서 99년까지 다양합니다. 주문형 백업의 경우 백업이 삭제될 때까지 무기한 저장됩니다. 인스턴스의 백업 옵션과 관련된 백업 보관에 대한 자세한 내용은 백업 옵션 선택을 참고하세요.
인스턴스 삭제 후 백업 보관
보관된 백업은 인스턴스가 삭제된 후 Cloud SQL에서 보관하는 백업입니다. 이러한 백업은 주문형 백업과 인스턴스가 사용 중일 때 생성된 자동 백업으로 구성됩니다. 인스턴스를 삭제하면 이러한 백업은 인스턴스와 독립적으로 프로젝트 레벨에 저장됩니다. 보관된 백업은 인스턴스 삭제 시 마지막으로 수행한 백업인 최종 백업과 다릅니다.
사용자는 이러한 백업의 설명을 업데이트하여 Google Cloud 프로젝트에서 더 쉽게 관리할 수 있습니다. 보관된 백업은 언제든지 새 Cloud SQL 인스턴스 또는 기존 Cloud SQL 인스턴스로 복원할 수 있습니다.
이러한 백업의 경우 보관 기간은 백업 유형에 따라 정의되며 인스턴스가 삭제된 후에는 변경될 수 없습니다. 표준 백업의 경우 백업이 수동으로 삭제되거나 백업이 포함된 프로젝트가 삭제될 때까지 주문형 백업이 무기한 유지됩니다. 고급 백업의 경우 선택한 보관 규칙에 따라 주문형 백업이 보관됩니다. 자동 백업은 인스턴스가 삭제된 후 하루에 백업 하나씩 순차적으로 삭제됩니다. 연속 기간은 삭제 전 인스턴스의 보관 설정에 따라 정의되며 범위는 인스턴스에서 선택한 백업 옵션에 따라 1일~99년입니다. 예를 들어 인스턴스의 자동 백업 보관 설정이 7로 설정된 경우 인스턴스가 삭제된지 7일 후에 최신 자동 백업이 삭제됩니다.
보관된 백업은 언제든지 수동으로 삭제할 수 있습니다. 그러나 보관된 백업을 삭제하면 삭제된 백업은 복구할 수 없습니다.
표준 백업의 경우 Cloud SQL에서 인스턴스를 삭제한 후에도 인스턴스 이름을 사용할 수 있으므로 보관된 백업은Google Cloud 프로젝트에 instance_deletion_time
필드와 함께 저장됩니다. 이 필드를 사용하면 특정 백업이 라이브 인스턴스에 속하는지 삭제된 인스턴스에 속하는지 식별할 수 있습니다. 백업을 더 쉽게 관리할 수 있도록 백업 설명을 업데이트할 수도 있습니다.
표준 백업 옵션을 사용하여 새 인스턴스 또는 기존 인스턴스에 보관된 백업을 사용 설정하는 방법에 관한 자세한 내용은 보관된 백업 구성을 참고하세요. 고급 백업의 경우 보관된 백업은 연결된 백업 계획에 의해 관리됩니다.
인스턴스가 삭제된 후 보관된 백업을 관리하려면 삭제된 인스턴스의 백업 관리를 참고하세요.
복구 백업
Cloud SQL은 자동 백업 정책의 일부로 사용할 수 있는 정상 백업이 없으면 모든 활성 인스턴스의 최신 일일 백업을 최소 하나 이상 보관하려고 시도합니다. Google Cloud Customer Care에 문의하면 이 백업을 복구 목적으로 사용할 수 있습니다.
백업 및 데이터 무결성 검사
Cloud SQL은 백그라운드 데이터베이스 무결성 검사를 자동으로 수행하여 잠재적인 데이터 무결성 문제를 식별합니다. 무결성 검사는 고객이 시작한 백업 또는 복구 백업의 샘플링 복원을 통해 오프라인 프로세스로 수행됩니다.
복제본 백업
복제본 인스턴스에 백업을 사용할 수 없습니다. 복제본 인스턴스는 기본 인스턴스의 복사본이므로 백업은 기본 인스턴스와 함께 유지됩니다. 장애 조치나 전환으로 인해 복제본 인스턴스가 독립형 인스턴스로 승격되면 인스턴스에 백업이 사용 설정되며 자체 백업 구성이 필요합니다. 승격된 복제본은 기본 인스턴스의 백업 구성을 상속하지 않으며 기본 인스턴스 백업에 액세스할 수 없습니다.
백업과 내보내기 비교
백업은 보관 정책에 따라 Cloud SQL에서 관리되며 Cloud SQL 인스턴스와 별도로 저장됩니다. Cloud SQL 백업은 수명주기를 관리하는 Cloud Storage에 업로드된 내보내기와 다릅니다. 백업은 인스턴스의 전체 디스크를 포괄합니다. 내보내기는 특정 콘텐츠를 선택할 수 있습니다.
백업 및 복원 작업은 데이터베이스를 이후 버전으로 업그레이드하는 데 사용될 수 없습니다. 백업에서 백업이 수행될 때와 동일한 데이터베이스 버전의 인스턴스로만 복원할 수 있습니다.
최신 버전으로 업그레이드하려면 Database Migration Service를 사용하거나 데이터베이스를 새 Cloud SQL 인스턴스로 내보낸 후 가져오는 것이 좋습니다.백업 크기
첫 번째 백업을 제외한 모든 Cloud SQL 백업은 증분 백업입니다. 이전 백업이 수행된 후에 변경된 데이터만 포함됩니다. 가장 오래된 백업은 데이터베이스 크기와 비슷하지만 후속 백업 크기는 데이터 변경 속도에 따라 다릅니다. 가장 오래된 백업이 삭제되면 두 번째로 오래된 백업의 크기가 증가하여 전체 백업이 되고 백업 간의 차이를 캡처하도록 조정됩니다. 이후의 각 증분 백업도 새 전체 백업과 일치하도록 업데이트됩니다.
개별 백업 크기를 확인할 수 있습니다. 백업 크기는 각 백업의 청구 가능한 크기를 나타냅니다.
문제 해결
문제 | 문제 해결 |
---|---|
현재 작업의 상태를 볼 수 없습니다. | Google Cloud 콘솔은 작업 완료 시에만 성공 또는 실패를 보고합니다. 경고 또는 기타 업데이트를 표시하도록 설계되지 않았습니다.
|
주문형 백업 작업을 실행한 사용자를 확인하려고 합니다. | 사용자 인터페이스에 작업을 시작한 사용자가 표시되지 않습니다.
로그를 살펴보고 텍스트를 기준으로 필터링하여 사용자를 찾습니다. 개인 정보의 경우 감사 로그를 사용해야 할 수도 있습니다. 관련 로그 파일은 다음과 같습니다.
|
인스턴스가 삭제된 후에는 인스턴스를 백업할 수 없습니다. | 데이터의 최종 백업을 수행하지 않고 인스턴스를 삭제하면 데이터를 복구할 수 없습니다. 하지만 인스턴스를 복원하면 Cloud SQL에서 백업도 복원합니다. 삭제된 인스턴스를 복구하는 방법에 대한 자세한 내용은 인스턴스 삭제 후 백업 보관을 참조하세요. 내보내기 작업을 완료한 경우 새 인스턴스를 만든 다음 가져오기 작업을 수행하여 데이터베이스를 다시 만들 수 있습니다. 내보내기는 Cloud Storage에 쓰이고 여기에서 가져오기를 읽습니다. |
자동 백업이 장시간 중단되고 취소할 수 없습니다. | 데이터베이스 크기에 따라 백업에 오랜 시간이 걸릴 수 있습니다.
작업을 취소해야 하는 경우 고객지원에 인스턴스 |
SQL 덤프 파일에 참조된 하나 이상의 사용자가 없으면 복원 작업이 실패할 수 있습니다. | SQL 덤프를 복원하기 전에 객체를 소유하거나 덤프된 데이터베이스의 객체에 대한 권한이 부여된 모든 데이터베이스 사용자가 대상 데이터베이스에 있어야 합니다. 그렇지 않으면 복원 작업이 원래 소유권이나 권한으로 객체를 다시 만들지 못합니다.
SQL 덤프를 복원하기 전에 데이터베이스 사용자를 만듭니다. |
자동 백업 보관 일수를 7일에서 30일 이상으로 늘리려고 합니다. | 1개부터 365개까지
유지할 자동 백업 수를 구성할 수 있습니다. 자동 백업은 구성된 보관 값에 따라 정기적으로 프루닝됩니다. 따라서 복원할 수 있는 자동 백업은 현재 표시되는 백업뿐입니다.
백업을 무기한 보관하려면 자동 백업과 동일한 방식으로 삭제되지 않는 주문형 백업을 만들면 됩니다. 주문형 백업은 무기한 유지됩니다. 즉, 백업이나 백업이 속한 인스턴스가 삭제될 때까지 유지됩니다. 이러한 유형의 백업은 자동으로 삭제되지 않으므로 결제에 영향을 미칠 수 있습니다. |
자동 백업에 실패했으며 이메일 알림을 받지 못했습니다. | Cloud SQL에서 백업 상태를 알리도록 설정하려면 로그 기반 알림을 구성합니다. |
인스턴스 삭제 시 최종 백업을 수행하도록 선택한 경우에는 인스턴스를 삭제할 수 없습니다. |
인스턴스를 삭제할 때 삭제하기 전에 인스턴스의 최종 백업을 수행할지 여부를 확인해야 합니다. final-backup 인스턴스 설정을 사용하여 최종 백업을 사용 설정한 경우 인스턴스를 삭제할 때 선택한 항목이 인스턴스 최종 백업을 사용 설정할 때 설정한 최종 백업 인스턴스 구성과 일치해야 합니다. 이 문제를 완화하려면 다음 중 하나를 수행합니다.
|
최종 백업 설정으로 기본 인스턴스를 만든 후에는 복제본 인스턴스를 만들 수 없습니다. |
최종 백업 인스턴스 설정이 사용 설정된 새 인스턴스를 만드는 경우 기본 인스턴스에만 백업 구성을 적용하도록 최종 백업 조직 정책을 업데이트해야 합니다.
복제본 인스턴스에는 최종 백업이 지원되지 않습니다. 자세한 내용은 Cloud SQL 조직 정책을 참조하세요. |