Skip to main content

시점 복원

시점 복원(Point-in-time Recovery)은 특정 시점으로 데이터베이스를 되돌리는 기능으로 인스턴스 그룹 단위로 동작합니다. 시점 복원은 서비스 배포 후 오류로 인해 특정 시점으로 데이터베이스를 되돌려야 하거나 외부 공격으로 예상치 못한 데이터 유실이 발생했을 때, 또는 관리상의 실수로 데이터가 삭제되어 특정 시점으로 복원이 필요한 경우에 활용할 수 있습니다.
자동 백업 수행 시점 및 바이너리 로그가 보관된 기간을 바탕으로 복원 가능한 기간이 결정되며 해당 기간 중 특정 시점을 지정해 신규 인스턴스 그룹으로 복원할 수 있습니다.

시점 복원 전 확인 사항

인스턴스 그룹의 상태

시점 복원은 인스턴스 그룹의 상태가 Primary-Available, Available 또는 Error 일 때만 가능합니다. 인스턴스 그룹에 진행 중인 작업이 없으며 서비스가 정상적인 상태일 때 또는 인스턴스 그룹의 일부 인스턴스에 오류가 발생하여 일시적으로 인스턴스를 사용할 수 없어 복원이 필요한 상태일 때 시점 복원을 진행할 수 있습니다.

자동 백업

시점 복원을 진행하려면 대상 인스턴스 그룹에 자동 백업 파일이 필요합니다. 이를 위해 자동 백업 옵션이 사용으로 설정되어 있어야 합니다. 복원 가능한 시점은 수행된 자동 백업과 바이너리 로그 보관 기간을 기준으로 결정되므로 자동 백업의 보관 기간을 적절하게 설정하는 것이 중요합니다. 자동 백업 설정 및 보관 기간 조정에 대한 자세한 내용은 자동 백업 가이드를 참고하시기 바랍니다.

바이너리 로그

보관 설정

시점 복원을 진행하려면 대상 인스턴스 그룹의 바이너리 로그가 보관되어 있어야 합니다. 바이너리 로그는 binlog_expire_logs_seconds 파라미터에 설정된 기간 동안 보관되며 기본값은 691,200초(약 8일)입니다. 보관 기간이 지나면 로그는 시스템에 의해 자동으로 삭제되며 이 설정은 복원 가능한 기간에 영향을 줍니다. 보관 기간 변경이 필요한 경우 binlog_expire_logs_seconds 파라미터를 확인해주세요.

트랜잭션 조정, 크기 설정

바이너리 로그는 트랜잭션 단위로 기록됩니다. 트랜잭션이 크다면 복원까지 시간이 오래 걸릴 수 있으며 트랙잭션이 작은 경우 상대적으로 복원 속도가 빠르기 때문에 autocommit 활성화 등을 통해 작은 단위의 트랜잭션 작업을 하는 경우 복원 속도를 단축시킬 수 있습니다. 또한 로그 자체의 사이즈를 줄여 복원 속도를 더 빠르게 조치할 수 있습니다. binlog_row_image, binlog-format 등의 바이너리 로그 관련 파라미터를 확인해주세요.


단, 파라미터를 잘못 수정하는 경우, 서비스에 영향을 미칠 수도 있으므로 운영 전략에 맞는 파라미터의 수정이 필요합니다. 파라미터 수정 관련 자세한 설명은 파라미터 그룹 수정 가이드를 참고하시기 바랍니다.

복원 가능한 최근 시점

시점 복원은 자동 백업과 바이너리 로그를 함께 활용하여 특정 시점까지 데이터를 복원합니다. 복원 가능한 최근 시점은 자동 백업이 수행된 시점(자동 백업 생성일시)과 바이너리 로그에 기록된 내용에 따라 결정됩니다. Primary 인스턴스가 정상인 상태(Available, Primary Available)인 경우 현재 시간 또는 바이너리 로그에 기록된 마지막 시각까지 복원이 가능합니다. 인스턴스 그룹 > 시점 복원의 복원 시점에서 복원 가능한 최근 시점을 확인할 수 있습니다.

시점 복원

MySQL 서비스의 시점 복원 기능으로 특정 시점의 데이터를 바탕으로 신규 인스턴스 그룹을 생성할 수 있습니다.

  1. 카카오클라우드 콘솔에서 Data Store > MySQL 메뉴로 이동합니다.

  2. 인스턴스 그룹 메뉴에서 시점 복원을 할 MySQL 인스턴스 그룹을 선택합니다.

  3. MySQL 작업 또는 [더 보기] 아이콘 > 시점 복원을 선택합니다.

  4. 시점 복원에서 정보를 입력한 후 [확인] 버튼을 클릭합니다.

    항목구분설명
    복원 정보복원 정보
    - 선택한 인스턴스 그룹 이름, 엔진 버전, 기본 스토리지 크기, 부가옵션 사용 유무 등 시점 복원을 위한 대상 정보
    - 해당 정보를 바탕으로 복원
    복원 시점복원할 시점을 선택, 시점은 UTC+9:00 기준
    - 최근 시점: 최근 시점으로 복원
    - 시점 지정: 복원 가능한 기간 중 특정 시점을 지정해 복원
    복원 시점 지정복원 시점을 시점 지정으로 선택했을 경우 지정 가능
    - 복원 가능한 기간을 확인하고 시점을 캘린더에서 직접 지정
    기본 설정인스턴스 그룹 이름MySQL 인스턴스 그룹의 이름
    - 동일 프로젝트 내에서 중복된 MySQL 인스턴스 그룹 이름은 사용할 수 없음
    - 예시: mysql-instance-01
    설명(선택)인스턴스 그룹에 대한 부가 설명을 100자까지 입력 가능
    인스턴스 가용성고가용성 (Primary, Standby 인스턴스) (제공 예정)Primary 인스턴스와 다수의 Standby 인스턴스를 생성 가능
    - 단일 AZ 또는 다중 AZ
    단일 (Primary 인스턴스)단일 Primary 인스턴스만 생성 가능
    - 단일 AZ(가용 영역)만 이용 가능
    MySQL 설정엔진 버전MySQL 데이터베이스의 버전이 자동 선택됨
    - MySQL 데이터베이스 버전 8.0.34, 8.0.41 제공
    - 하위 MySQL 버전으로는 복원 불가능
    MySQL 사용자 이름MySQL 데이터베이스 관리자 계정의 이름
    - 형식: 1~32자 이내, 영문 소문자, 언더바만 입력 가능
    - 예시: admin
    * 예약된 계정 이름(root)은 입력 불가
    MySQL 비밀번호MySQL 데이터베이스 관리자 계정의 초기 비밀번호
    - 형식: 8~16자 이내
    - 공백, /, ', ", @ 문자는 사용할 수 없음

    ⚠️ 관리자 계정 패스워드는 데이터베이스 구동 이후에 변경 가능
    ⚠️ 데이터베이스 구동 후 사용자가 변경한 관리자 계정 패스워드는 확인 불가
    파라미터 그룹선택한 엔진 버전에 맞는 파라미터 그룹을 선택 가능
    인스턴스 유형데이터베이스 컴퓨팅 자원 구성을 위한 인스턴스 유형 선택
    - 자세한 설명은 인스턴스 유형 참고
    기본 스토리지 유형/크기SSD데이터베이스에서 사용할 볼륨의 유형과 크기 설정
    - 볼륨 유형: 현재는 SSD 유형만 지원하며, 향후 다양한 유형을 지원 예정
    - 볼륨 크기: 100 GB~5,120GB 크기로 볼륨을 생성 가능
    * 선택한 인스턴스 유형에 따라 최소 용량 제한은 달라질 수 있습니다.
    로그 스토리지 유형/크기SSD데이터베이스에서 로그 적재에 사용하는 스토리지로, 생성 후 유형은 변경할 수 없음
    - 볼륨 유형: 현재는 SSD 유형만 지원하며, 향후 다양한 유형을 지원 예정
    - 볼륨 크기: 100 GB~16,384 GB 크기로 볼륨을 생성할 수 있습니다.
    * 선택한 인스턴스 유형에 따라 최소 용량 제한은 달라질 수 있습니다.
    네트워크 설정다중 AZ 옵션고가용성을 선택한 경우 설정할 수 있는 옵션, AZ별 서브넷과 생성할 인스턴스 개수를 지정 가능
    VPCMySQL 인스턴스의 데이터베이스가 구성될 네트워크를 선택
    서브넷 및 인스턴스 개수 설정테이블 내에서 서브넷 선택 및 인스턴스 개수 지정 가능
    가용성 단일일 경우 1개, 고가용성일 경우, Primary, Standby 서브넷을 합쳐 최대 6개의 인스턴스 생성 가능
    구분 PrimaryPrimary 인스턴스가 생성될 서브넷을 선택하고 인스턴스 개수를 지정
    가용성 단일일 경우 1개, 고가용성일 경우에는 1개의 Primary 인스턴스를 포함, 최소 2개의 인스턴스를 생성 권장
    구분 StandbyStandby 인스턴스가 생성될 서브넷을 선택하고 인스턴스 개수를 지정
    다중 AZ 옵션을 사용하는 경우에만 사용 추가 가능하며 서브넷 추가 버튼을 통해 서브넷별로 Standby 설정 가능
    서브넷 추가가용 영역의 개수만큼 서브넷 추가 가능
    보안 그룹인스턴스 그룹에 적용할 신규 보안 그룹 생성 또는 미리 생성된 보안 그룹 선택
    - 다중 선택 가능
    자동 백업자동 백업 옵션자동 백업 옵션 사용 여부, 사용 시 1일 1회 자동으로 백업 진행
    백업 보존 기간자동 백업 보존 기간, 최소 1일에서 35일까지 선택 가능
    - 인스턴스 그룹에 생성된 모든 자동 백업의 보존 기간 변경
    자동 백업 시작 시간자동 백업 시작 시간, 선택한 시간부터 15분 사이에 백업 시작
    부가 설정테이블 대소문자 구분테이블의 대소문자를 구분하는 파라미터(lower_case_table_names), 파라미터 그룹에 설정된 값과는 별도로 적용
    인스턴스 그룹 생성 후에는 변경 불가