영구 디스크 기반 SAP HANA 데이터베이스 백업에서 단일 테넌트를 복원하고 복구하려면 다음 단계를 따르세요.
백업 마운트
관리 콘솔을 사용하여 백업을 대상 서버에 마운트합니다.
- 실행 중인 HANA 인스턴스를 중지합니다 (소스로 복구하는 경우에만 필요).
- 관리 콘솔에 로그인하여 애플리케이션 페이지로 이동합니다.
- 데이터베이스를 선택하고 액세스를 선택합니다.
- 복구할 백업을 선택하고 마운트를 클릭합니다.
- 마운트 페이지에서 대상 프로젝트 이름, 리전, 영역, 대상 GCE 인스턴스 이름을 선택합니다.
- 데이터 볼륨, 로그 볼륨, 로그 백업 볼륨 마운트 위치를 업데이트합니다. (사전 비행이 성공할 수 있도록 사용되지 않는 모든 마운트 위치를 지정합니다.)
- 스냅샷 무결성 검사 옵션을 사용 중지합니다.
- 사전 비행 검사를 실행합니다. 실패하면 오류를 해결하고 다시 실행한 후 작업을 제출합니다.
- 마운트 작업이 완료되면 대상 호스트에서 마운트 지점을 확인할 수 있습니다.
- 소스로 복구한 경우 인스턴스를 다시 시작합니다.
마운트된 단일 테넌트 데이터베이스 복구
사용된 변수의 예는 다음과 같습니다.
- 소스 DBSID: DM2
- 대상 DBSID: NVM (대상 호스트에서 사전 구성해야 함)
- 데이터 볼륨: /hana/data_2
- 로그 볼륨: /hana/log_2
- 로그 백업 볼륨: /hanabackup_2, /hana/backup_2_533788010
- 소스 테넌트: DM2 (데이터 파일 위치: mnt00001/hdb00002.00003, mnt00001/hdb00003.00003)
- 대상 테넌트: NVM
절차
루트 사용자로 대상 호스트에 로그인하고 파일의 소유권을 변경합니다.
chown -R nvmadm:sapsys /hanabackup_2 /hana/backup_2_533788010
매니페스트 파일이 마운트 작업의 일부로 생성되었는지 확인합니다.
cd /act/touch cat dm2_HANA.manifest
출력 예는 다음과 같습니다.
SYSTEMDB=mnt00001/hdb00001
DM2=mnt00001/hdb00002.00003:mnt00001/hdb00003.00003
매니페스트 파일에 표시된 테넌트 데이터베이스와 관련된 필요한 디렉터리가 대상 서버에 있는지 확인합니다.
ls -ltr /hana/data/NVM/mnt00001/hdb00002.00003/ total 103252 -rw-r--r-- 1 nvmadm sapsys 0 Jun 13 20:11 __DO_NOT_TOUCH_FILES_IN_THIS_DIRECTORY__ -rw-r--r-- 1 nvmadm sapsys 269811712 Jun 14 19:26 datavolume_0000.dat ls -ltr /hana/data/NVM/mnt00001/hdb00003.00003/ total 3801248 -rw-r--r-- 1 nvmadm sapsys 0 Jun 13 20:11 __DO_NOT_TOUCH_FILES_IN_THIS_DIRECTORY__ -rw-r--r-- 1 nvmadm sapsys 3892314112 Jun 14 19:29 datavolume_0000.dat
대상 서버에서 테넌트 데이터베이스를 중지합니다.
hdbsql -U ACTBACKUP hdbsql SYSTEMDB=> alter system stop database NVM;
마운트된 마운트 지점의 파일을 대상 서버 마운트 지점으로 복사합니다.
cp /hana/data_2/DM2/mnt00001/hdb00002.00003/* /hana/data/NVM/mnt00001/hdb00002.00003/ cp /hana/data_2/DM2/mnt00001/hdb00003.00003/* /hana/data/NVM/mnt00001/hdb00003.00003/
복사된 파일의 권한이 변경되었는지 확인합니다.
chown -R nvmadm:sapsys /hana/data/NVM/mnt00001/hdb00002.00003 chown -R nvmadm:sapsys /hana/data/NVM/mnt00001/hdb00003.00003
SYSTEMDB가 시작되었는지 확인합니다.
point-in-time recovery를 사용하여 테넌트 데이터베이스를 복구합니다.
- 마운트된 데이터베이스에 로그 마운트 지점이 여러 개인 경우 쉼표로 구분된 마운트 지점 로그 경로를 전달합니다.
hdbsql -jAU ACTBACKUP RECOVER DATABASE FOR NVM UNTIL TIMESTAMP '2024-06-14 17:16:00' CLEAR LOG USING CATALOG PATH ('/hana/backup_2_533788010/log/DB_DM2') USING DATA PATH ('/hana/data/NVM') USING LOG PATH ('/hanabackup_2/log/DB_DM2','/hana/backup_2_533788010/log/DB_DM2') USING SNAPSHOT CHECK ACCESS USING FILE;
- 데이터베이스 이미지에서만 복구하는 경우 다음 명령어를 사용합니다.
hdbsql -jAU ACTBACKUP RECOVER DATA FOR $TSID USING SNAPSHOT CLEAR LOG
테넌트 데이터베이스가 복구되면 데이터베이스의 상태를 확인합니다.
hdbsql -jAU ACTBACKUP hdbsql SYSTEMDB=> select * from m_databases; | DATABASE | DESCRIPTION | ACT | ACTIVE | OS_USER | OS_GROUP | RESTART | F | | -------- | --------------- | --- | ------ | -------- | -------- | ------- | - | | SYSTEMDB | SystemDB-NVM-00 | YES | ACTIVE | | | DEFAULT | ? | | NVM | NVM-00 | YES | ACTIVE | | | DEFAULT | ? |
마운트 해제 및 삭제를 실행하여 백업 디스크 /hana/data_2 등을 삭제합니다.