Backup

Prev Next

VPC 환경에서 이용 가능합니다.

Backup에서는 Cloud DB Serverless을 사용 중인 사용자의 데이터를 안전하게 보관하기 위해 DB 클러스터별로 설정해놓은 백업 정보를 확인할 수 있습니다. 또한 장애가 발생하여 데이터가 손실된 경우 보관 중이던 백업 파일로 복원을 진행할 수도 있습니다.

백업과 복원을 사용하기 위해서 우선 Cloud DB Serverless에서 제공하고 있는 백업에 대한 기본 수행 규칙을 이해하는 것이 좋습니다. 백업 기본 수행 규칙은 다음과 같습니다.

  • 백업 수행 방식
    • 하루 한 번씩 매일 수행
    • 자동 설정과 사용자 정의 설정 중 선택
      • 자동 설정: Cluster 생성 시 임의의 시간이 지정되며 이후 처음 백업된 시간과 유사한 시간에 백업 수행
      • 사용자 정의 설정: 사용자가 선택한 시간 +15분 내 백업 수행 시작
  • 백업 파일
    • 보관 기간: 사용자 설정에 따라 최대 30일까지 보관 가능
    • 저장 위치: 별도의 데이터 볼륨

Backup 화면

백업 기능 이용을 위한 기본적인 설명은 다음과 같습니다.

serverless_backup_01_ko

serverless_backup_02_ko

영역 설명
① 메뉴 이름 현재 확인 중인 메뉴 이름
② 기본 기능 Cloud DB Serverless 상세 정보 확인, Backup 화면 새로 고침
③ 백업 탭 Cluster Backup: DB 클러스터별 자동 백업 목록 확인 / Imported Backup: Object Storage에서 가져온 백업 목록 확인
④ Cluster Backup 목록 설정해놓은 DB 클러스터별 백업 설정 및 설정 정보
⑤ 상세 정보 [상세내역] 버튼: Cluster Backup 상세 정보 및 복원, Object Storage에 저장
⑥ Object Storage에서 가져오기 [Object Storage에서 가져오기] 버튼: Object Storage에 저장된 백업 파일을 Import
⑦ Imported Backup 목록 Import한 백업 파일 목록 및 상태 정보
⑧ 상세 정보 [상세내역] 버튼: Imported Backup 상세 정보 및 복원

백업 설정 목록 확인

운영 중인 DB 클러스터별 백업 설정 목록을 확인할 수 있습니다. 백업 설정 목록을 확인하는 방법은 다음과 같습니다.

  1. 네이버 클라우드 플랫폼 콘솔의 VPC 환경에서 Menu > Services > Database > Cloud DB Serverless 메뉴를 차례대로 클릭해 주십시오.
  2. Backup 메뉴를 클릭해 주십시오.
  3. 백업 설정 목록이 나타나면 필요한 정보를 확인해 주십시오.
    • DBMS: 생성한 DB 유형
    • DB Cluster 이름: 사용자가 지정한 DB Cluster 이름
    • Backup 보관일: 백업 파일을 데이터 스토리지에 저장하여 보관하는 최대 일수
    • Backup 시작시간: 매일 1회 백업을 수행하는 시간
    • Backup 데이터 크기: 완료된 백업 파일의 크기
    • 마지막 Backup 일시: 최근에 수행 완료한 백업 날짜
    • 상세정보 보기: DB 클러스터별 생성된 백업 파일 목록의 상세 정보 및 복원, Object Storage에 저장

Cluster별 백업 파일 목록 확인

백업 수행을 완료하여 Cluster별로 생성된 백업 파일 목록을 확인하는 방법은 다음과 같습니다.

  1. 네이버 클라우드 플랫폼 콘솔의 VPC 환경에서 Menu > Services > Database > Cloud DB Serverless 메뉴를 차례대로 클릭해 주십시오.
  2. Backup 메뉴를 클릭해 주십시오.
  3. 상세 정보를 확인할 백업 설정 행의 상세정보 보기에서 [상세내역] 버튼을 클릭해 주십시오.
  4. 백업 파일의 상세 정보를 확인해 주십시오.
    • Backup 날짜: 백업을 수행한 날짜
    • Backup 시간: 백업을 수행한 시각
    • Backup Zone: 백업을 수행한 존
    • Backup 데이터 크기: 백업 수행 완료 후 생성된 백업 파일의 크기(GB)
    • 상태: 해당 백업 수행에 따른 상태

콘솔에서 데이터 복원

Cloud DB Serverless에서는 백업 파일을 이용하여 소실된 데이터를 복원하여 쉽고 빠르게 DB 클러스터를 생성할 수 있는 서비스를 제공하고 있습니다.

Backup 파일 복원

자동 백업을 통해 생성된 Backup 파일을 사용하여 데이터를 복원할 수 있습니다.
생성된 백업 파일을 사용하여 데이터를 복원하는 방법은 다음과 같습니다.

  1. 네이버 클라우드 플랫폼 콘솔의 VPC 환경에서 Menu > Services > Database > Cloud DB Serverless 메뉴를 차례대로 클릭해 주십시오.
  2. Backup 메뉴를 클릭해 주십시오.
  3. 복원할 백업 설정 행의 [상세내역] 버튼을 클릭해 주십시오.
  4. 백업 파일을 선택한 후 [Backup 파일 복원] 버튼을 클릭해 주십시오.
  5. Backup 파일 복원 팝업 창이 나타나면 복원을 위해 필요한 정보를 확인하거나 입력해 주십시오.
    serverless_backup03_ko
    • Backup 시간: 백업이 완료된 시간으로 복원
    • VPC: 선택한 백업 파일로 복원되며, 신규 DB 클러스터 생성 시 필요한 VPC 연결 설정 값
    • Subnet: 선택한 백업 파일로 복원되며, 신규 DB 클러스터 생성 시 필요한 Subnet 연결 설정 값
    • Instance 스펙 설정: 최소 Unit과 최대 Unit을 1~165까지 입력 가능하며 최소 보다 작은 최대 값 입력 불가
    • Auto Scaling 정책 설정: Auto Scaling 정책 설정의 사용 여부 선택
      • Replica 증설 기준: 평균 CPU 사용량, 평균 Connection 개수 중 기준값을 입력
      • 최소 Replica 대수와 최대 Replica 대수를 1~15까지 입력
    • DB Cluster 이름 : 신규 DB 클러스터 이름
  6. [복원하기] 버튼을 클릭해 주십시오.
  7. DB Server 메뉴를 클릭해 주십시오.
  8. 복원 중인 DB 클러스터의 상태를 확인해 주십시오.
    • 시작중: 사용자가 입력한 정보로 DB 클러스터를 생성(복원)하고 있는 상태
    • 설정중: 사용자가 입력한 정보로 DB 클러스터를 생성(복원)하여 구성하고 있는 상태
    • 운영중: 사용자가 입력한 정보로 DB 클러스터의 생성(복원)과 설정이 완료되어 접속 가능한 상태
주의

DB 클러스터 복원 완료까지 수 분~수십 분이 소요될 수 있습니다.

Object Storage에 저장

Cloud DB Serverless에서는 생성한 백업 파일을 Object Storage에 저장해 필요시 다른 곳에 보관할 수 있습니다. 보관 중이던 백업 파일을 Object Storage에 저장하는 방법은 다음과 같습니다.

참고

Object Storage 이용 신청 시 별도의 요금이 부과됩니다. Object Storage 소개와 요금제에 대한 설명은 네이버 클라우드 플랫폼 포털의 서비스 > Storage > Object Storage 메뉴를 참조해 주십시오.

  1. 네이버 클라우드 플랫폼 콘솔의 VPC 환경에서 Menu > Services > Database > Cloud DB Serverless 메뉴를 차례대로 클릭해 주십시오.
  2. Backup 메뉴를 클릭해 주십시오.
  3. Object Storage에 저장할 파일이 있는 백업 설정 행의 [상세내역] 버튼을 클릭해 주십시오.
  4. 백업 파일을 선택한 후 [Object Storage로 보내기] 버튼을 클릭해 주십시오.
  5. Object Storage로 보내기 팝업 창이 나타나면 저장할 버킷을 클릭하여 선택해 주십시오.
    serverless_backup04_ko.png
  6. [Object Storage로 보내기] 버튼을 클릭해 주십시오.
  7. [확인] 버튼을 클릭해 주십시오.
주의
  • Object Storage로 보내기 시 버킷 잠금 해제와 접근제어 해제 설정이 필요합니다.
  • Object Storage로 보내기 완료까지 수 분~수 시간이 소요될 수 있습니다.

Imported Backup

Cloud DB Serverless에서는 Object Storage에 저장된 내보내기 백업 파일을 Import하여 새 DB 클러스터를 생성할 수 있습니다. Imported Backup은 백업 요금과 동일하게 과금됩니다.

주의
  • Cloud DB Serverless에서 생성한 스냅샷 백업 파일만 정상 복구를 보장합니다. 출처를 알 수 없는 백업 파일을 통한 신규 DB 클러스터 생성은 지원하지 않습니다.
  • Cloud DB Serverless에서 허용하는 스토리지 엔진 테이블을 제외한 데이터는 모두 삭제됩니다(Plugin, DB ACL 등).
  • 선택한 백업 파일과 신규로 생성할 DB 클러스터의 DB 버전이 동일해야 합니다. DB 버전이 다른 경우나 접근 제어 설정된 버킷은 데이터를 정상적으로 가져올 수 없습니다.
  • 백업 파일 사이즈는 16TiB 미만만 가능합니다.
  • Backup Import 완료까지 파일 크기에 따라 수 분~수 시간이 소요될 수 있습니다.

Object Storage에서 백업 가져오기

Object Storage에 저장된 내보내기 백업 파일을 Import하는 방법은 다음과 같습니다.

  1. 네이버 클라우드 플랫폼 콘솔의 VPC 환경에서 Menu > Services > Database > Cloud DB Serverless 메뉴를 차례대로 클릭해 주십시오.
  2. Backup 메뉴를 클릭해 주십시오.
  3. Imported Backup 탭을 클릭해 주십시오.
  4. [Object Storage에서 가져오기] 버튼을 클릭해 주십시오.
  5. Object Storage에서 가져오기 팝업 창이 나타나면 필요한 정보를 입력해 주십시오.
    • Bucket: 백업 파일이 저장된 Object Storage 버킷 선택
    • 복원 파일: [복원 파일 선택] 버튼을 클릭하여 Import할 백업 파일 선택
    • DBMS 종류: 백업 파일의 DBMS 종류 선택
    • DB 엔진 버전: 백업 파일의 DB 엔진 버전 선택
    • Backup 이름: Import할 백업의 이름 입력 (최소 3글자, 최대 30자)
  6. [확인] 버튼을 클릭해 주십시오.

Imported Backup 목록 확인

Import한 백업 파일 목록을 확인하는 방법은 다음과 같습니다.

  1. 네이버 클라우드 플랫폼 콘솔의 VPC 환경에서 Menu > Services > Database > Cloud DB Serverless 메뉴를 차례대로 클릭해 주십시오.
  2. Backup 메뉴를 클릭해 주십시오.
  3. Imported Backup 탭을 클릭해 주십시오.
  4. Imported Backup 목록에서 필요한 정보를 확인해 주십시오.
    • Backup 이름: Import 시 사용자가 지정한 백업 이름
    • 상태: 해당 Imported Backup의 현재 상태
    • DBMS: 백업 파일의 DB 유형
    • DBMS Version: 백업 파일의 DB 엔진 버전
    • 데이터 크기: Import된 백업 파일의 크기
    • Import 일시: Import가 완료된 날짜 및 시각

Imported Backup 상세 확인

Import한 백업 파일의 상세 정보 및 진행 상태를 확인하는 방법은 다음과 같습니다.

  1. Imported Backup 탭에서 확인할 백업 행의 [상세내역] 버튼을 클릭해 주십시오.
  2. 상세 정보를 확인해 주십시오.
    • Imported Backup 정보: Backup 이름, DBMS, DBMS Version, 데이터 크기, Import 일시, 상태
    • Import 정보: 시작 시간, 경과 시간
    • Import 진행 상태: Backup 다운로드 > 압축 해제 > 유효성 검증 > Backup 생성 > 임시파일 정리 > 완료
참고

유효하지 않은 백업 파일을 Import하면 진행 중 실패할 수 있습니다. 실패한 단계와 원인은 해당 Imported Backup의 [상세내역]에서 확인해 주십시오.

Imported Backup 복원

Import한 백업 파일을 사용하여 새 DB 클러스터를 생성하는 방법은 다음과 같습니다. DBMS 종류와 DB 엔진 버전은 Object Storage에서 가져오기 단계에서 입력한 값이 적용되며, 변경할 수 없습니다.

  1. Imported Backup 탭에서 복원할 백업 행의 [상세내역] 버튼을 클릭해 주십시오.

  2. [Backup 파일 복원] 버튼을 클릭해 주십시오.

  3. Imported Backup 복원 팝업 창이 나타나면 단계별로 필요한 정보를 입력해 주십시오.

    ① Cluster 설정

    • 고가용성 지원: 선택 시 2대의 서버가 생성되며 추가 요금 발생
    • Instance 스펙 설정: 최소 Unit과 최대 Unit 입력 (1~15)
    • Auto Scaling 정책 설정: Auto Scaling 정책을 통한 Replica 대수 자동 조절 여부 선택
    • 데이터 스토리지 타입: 사용할 데이터 스토리지 타입 선택. 현재 CB2만 제공
    • DB Cluster 이름: 신규 DB 클러스터 이름 입력 (최소 3글자, 최대 30자)

    ② DB 설정

    • USER_ID: DB 접속에 사용할 사용자 ID
    • USER 암호: DB 접속에 사용할 사용자 암호
    • DB 접속 포트: DB 접속 포트 번호 (기본값: 3306)
    • DB Config 설정: 네이버에서 제공하는 최적화된 기본 설정 확인
    • Backup 파일 보관 기간: 백업 파일 보관 일수 입력
    • Backup 시간: 자동 또는 사용자 정의 선택
    • DB log 수집: error 로그, slow query 로그 수집 및 뷰어 기능 제공 확인

    ③ 연결 설정

    • VPC: DB 클러스터를 연결할 VPC 선택
    • Subnet: DB 클러스터를 연결할 Subnet 선택
    • ACG 설정: Cloud DB Serverless를 위한 ACG 자동 생성

    ④ 최종 확인

    • Cluster 정보, DB 정보, 연결 설정 정보를 확인해 주십시오.
  4. 내용을 확인한 후 [DB Cluster 생성] 버튼을 클릭해 주십시오.

  5. DB Server 메뉴를 클릭해 주십시오.

  6. 복원 중인 DB 클러스터의 상태를 확인해 주십시오.

    • 시작중: 사용자가 입력한 정보로 DB 클러스터를 생성(복원)하고 있는 상태
    • 설정중: 사용자가 입력한 정보로 DB 클러스터를 생성(복원)하여 구성하고 있는 상태
    • 운영중: DB 클러스터의 생성(복원)과 설정이 완료되어 접속 가능한 상태
주의

DB 클러스터 복원 완료까지 수 분~수십 분이 소요될 수 있습니다.

Object Storage를 통한 백업 파일 복원

네이버 클라우드 플랫폼의 Object Storage에 저장한 백업 파일을 사용하여 설치형 MySQL로 데이터를 복원할 수 있습니다. Object Storage를 통한 백업 파일 복원 방법은 다음과 같습니다. Rocky 8.x - 9.x를 기준으로 설명합니다.

1. Object Storage에서 백업 파일 준비

  1. Object Storage에 저장을 참조하여 복원하려는 백업 파일을 Object Storage에 저장해 주십시오.
  2. 네이버 클라우드 플랫폼 콘솔의 VPC 환경에서 Menu > Services > Storage > Object Storage > Bucket Management 메뉴를 차례대로 클릭한 후 백업 파일을 저장한 버킷을 클릭해 주십시오.
  3. 저장한 백업 파일을 클릭한 후 편집 > 권한 관리 메뉴를 차례대로 클릭해 주십시오.
  4. 전체 공개 항목을 공개로 변경한 후 [확인] 버튼을 클릭해 주십시오.
  5. 저장한 백업 파일의 상세 정보에서 Link 항목의 링크를 복사해 주십시오.
주의
  • 백업 파일을 전체공개 시 임의의 위치에서 다운로드 가능합니다.
  • 백업 파일 다운로드 완료 후 반드시 권한을 적절하게 수정해야 합니다.

2. 백업 파일을 사용하여 데이터 복원

  1. Cloud DB Serverless 시나리오를 참조하여 애플리케이션 서버에 접속해 주십시오.

  2. 아래 명령에 복사한 링크를 넣은 후 실행하여 백업 파일을 다운로드해 주십시오.

    • 백업 파일 다운로드가 완료되면 Object Storage의 권한 관리에서 공개 설정을 공개 안함으로 변경해 주십시오.
     # wget [Link]
    
     -- 예시
     # wget https://kr.beta-object.ncloudstorage.com/test-bk-02/u-40001936-test-kr2-20251230084500.tar.gz
    
     # tar xzf [백업 파일명]
    
     -- 예시
     # tar xzf u-40001936-test-kr2-20251230084500.tar.gz
    
  3. 아래 명령을 실행하여 my.cnf 파일의 절대 경로를 설정해 주십시오.

    # MYSQL_CONF=/etc/my.cnf
    
  4. 아래 명령을 차례대로 실행하여 임시 디렉터리를 생성하고 BACKUP_DIR의 경로를 임시 디렉터리 위치로 지정해 주십시오.

     # cd ~
    
     # mkdir backup
    
     # cd ./backup/
    
     # BACKUP_DIR=`pwd`
    
  5. 아래 명령을 차례대로 실행하여 각 경로가 정상적으로 지정되었는지 확인해 주십시오.

    # echo $MYSQL_CONF
    
    # echo $BACKUP_DIR
    
  6. 아래 명령을 실행하여 실행 중인 MySQL을 종료해 주십시오.

    # systemctl stop mysqld
    
  7. 아래 명령을 차례대로 실행하여 my.cnf 파일을 통해 datadir의 위치를 확인한 후 datadir 변수에 해당하는 디렉터리를 백업 폴더로 이동해 주십시오.

    # grep datadir ${MYSQL_CONF}
    
    # mv [data directory 위치] ${BACKUP_DIR}
    
    -- 예시
    mv /var/lib/mysql ${BACKUP_DIR}
    
  8. 아래 명령을 차례대로 실행하여 Object Storage를 사용하여 백업한 파일을 datadir 위치로 복사해 주십시오.

    # mkdir [data directory 경로]
    
    -- 예시
    # mkdir /var/lib/mysql
    
    # cp -a [백업 파일 경로] [data directory 경로]
    
    -- 예시
    # cp -a /root/data/* /var/lib/mysql/
    
  9. 아래 명령을 차례대로 입력하여 datadir 위치로 이동한 후 datadir 권한을 mysql로 변경해 주십시오.

    # cd [data directory 경로]
    
    -- 예시
    # cd /var/lib/mysql
    
    # chown -R mysql:mysql [data directory 경로]
    
    -- 예시
    # chown -R mysql:mysql /var/lib/mysql
    
  10. my.cnf 파일의 [mysqld] 구문 아래에 skip-grant-tables 구문을 추가해 주십시오.

    # vi /etc/my.cnf
    
    [mysqld]
    skip-grant-tables
    
  11. 아래 명령을 차례대로 실행하여 MySQL을 시작한 후 새 root 계정을 생성해 주십시오.

    • create 실행 시 ERROR 1396 (HY000): Operation CREATE USER failed for 'root'@'localhost' 오류가 발생할 수 있습니다. 이 경우 drop user 'root'@'localhost'; 명령을 실행하여 기존 root 계정을 삭제한 후 다시 create를 실행해 주십시오.
    # systemctl start mysqld
    
    mysql -u root -p
    
    mysql > flush privileges;
    mysql > create user root@localhost identified by '패스워드';
    mysql > grant all privileges on *.* to root@localhost with grant option;
    mysql > flush privileges;
    
  12. my.cnf 파일의 [mysqld] 구문 아래에 추가한 skip-grant-tables 구문을 삭제한 후 아래 명령을 실행하여 MySQL을 재시작해 주십시오.

    # systemctl restart mysqld
    
참고

백업을 수행한 MySQL과 복구하는 MySQL의 버전이 동일해야 정상적으로 복구 가능합니다.