Skip to main content
NetApp Solutions SAP
본 한국어 번역은 사용자 편의를 위해 제공되는 기계 번역입니다. 영어 버전과 한국어 버전이 서로 어긋나는 경우에는 언제나 영어 버전이 우선합니다.

HANA 데이터베이스 복구

기여자

다음은 HANA 데이터베이스 복구를 위한 단계입니다.

필요한 SAP 서비스를 시작합니다.

vm-pr1:~ # systemctl start sapinit

다음 출력에서는 필요한 프로세스를 보여 줍니다.

vm-pr1:/ # ps -ef | grep sap
root     23101     1  0 11:29 ?        00:00:00 /usr/sap/hostctrl/exe/saphostexec pf=/usr/sap/hostctrl/exe/host_profile
pr1adm   23191     1  3 11:29 ?        00:00:00 /usr/sap/PR1/HDB01/exe/sapstartsrv pf=/usr/sap/PR1/SYS/profile/PR1_HDB01_vm-pr1 -D -u pr1adm
sapadm   23202     1  5 11:29 ?        00:00:00 /usr/sap/hostctrl/exe/sapstartsrv pf=/usr/sap/hostctrl/exe/host_profile -D
root     23292     1  0 11:29 ?        00:00:00 /usr/sap/hostctrl/exe/saposcol -l -w60 pf=/usr/sap/hostctrl/exe/host_profile
root     23359  2597  0 11:29 pts/1    00:00:00 grep --color=auto sap

다음 하위 섹션에서는 복제된 로그 백업을 사용한 정방향 복구와 복구 프로세스에 대해 설명합니다. 복구는 시스템 데이터베이스에 대한 HANA 복구 스크립트 및 테넌트 데이터베이스에 대한 hdbsql 명령을 사용하여 실행됩니다.

최신 데이터 저장점으로 복구를 실행하는 명령은 장에 설명되어 있습니다 "최신 HANA 데이터 볼륨 백업 저장점으로 복구".

로그 백업을 사용한 정방향 복구를 사용한 복구

사용 가능한 모든 로그 백업을 사용한 복구는 pr1adm 사용자로 다음 명령으로 실행됩니다.

  • 시스템 데이터베이스

recoverSys.py --command "RECOVER DATABASE UNTIL TIMESTAMP '2021-02-20 00:00:00' CLEAR LOG USING SNAPSHOT"
  • 테넌트 데이터베이스

Within hdbsql: RECOVER DATABASE FOR PR1 UNTIL TIMESTAMP '2021-02-20 00:00:00' CLEAR LOG USING SNAPSHOT
참고 사용 가능한 모든 로그를 사용하여 복구하려면 나중에 언제든지 복구 명령문의 타임스탬프로 사용할 수 있습니다.

또한 HANA Studio 또는 Cockpit을 사용하여 시스템 및 테넌트 데이터베이스 복구를 실행할 수도 있습니다.

다음 명령 출력에서는 복구 실행을 보여 줍니다.

시스템 데이터베이스 복구

pr1adm@vm-pr1:/usr/sap/PR1/HDB01> HDBSettings.sh recoverSys.py --command "RECOVER DATABASE UNTIL TIMESTAMP '2021-02-24 00:00:00' CLEAR LOG USING SNAPSHOT"
[139792805873472, 0.008] >> starting recoverSys (at Tue Feb 23 12:05:16 2021)
[139792805873472, 0.008] args: ()
[139792805873472, 0.008] keys: {'command': "RECOVER DATABASE UNTIL TIMESTAMP '2021-02-24 00:00:00' CLEAR LOG USING SNAPSHOT"}
using logfile /usr/sap/PR1/HDB01/vm-pr1/trace/backup.log
recoverSys started: ============2021-02-23 12:05:16 ============
testing master: vm-pr1
vm-pr1 is master
shutdown database, timeout is 120
stop system
stop system on: vm-pr1
stopping system: 2021-02-23 12:05:17
stopped system: 2021-02-23 12:05:18
creating file recoverInstance.sql
restart database
restart master nameserver: 2021-02-23 12:05:23
start system: vm-pr1
sapcontrol parameter: ['-function', 'Start']
sapcontrol returned successfully:
2021-02-23T12:07:53+00:00  P0012969      177cec93d51 INFO    RECOVERY RECOVER DATA finished successfully, reached timestamp 2021-02-23T09:03:11+00:00, reached log position 43123520
recoverSys finished successfully: 2021-02-23 12:07:54
[139792805873472, 157.466] 0
[139792805873472, 157.466] << ending recoverSys, rc = 0 (RC_TEST_OK), after 157.458 secs
pr1adm@vm-pr1:/usr/sap/PR1/HDB01>

테넌트 데이터베이스 복구

소스 시스템에서 pr1adm 사용자에 대한 사용자 저장소 키가 생성되지 않은 경우 대상 시스템에서 키를 생성해야 합니다. 키에 구성된 데이터베이스 사용자는 테넌트 복구 작업을 실행할 수 있는 권한이 있어야 합니다.

pr1adm@vm-pr1:/usr/sap/PR1/HDB01> hdbuserstore set PR1KEY vm-pr1:30113 <backup-user> <password>
pr1adm@vm-pr1:/usr/sap/PR1/HDB01> hdbsql -U PR1KEY
Welcome to the SAP HANA Database interactive terminal.
Type:  \h for help with commands
       \q to quit
hdbsql SYSTEMDB=> RECOVER DATABASE FOR PR1 UNTIL TIMESTAMP '2021-02-24 00:00:00' CLEAR LOG USING SNAPSHOT
0 rows affected (overall time 98.740038 sec; server time 98.737788 sec)
hdbsql SYSTEMDB=>

최신 로그 백업의 일관성을 확인합니다

로그 백업 볼륨 복제는 SAP HANA 데이터베이스에서 실행되는 로그 백업 프로세스와 독립적으로 수행되기 때문에 재해 복구 사이트에 일관되지 않은 로그 백업 파일이 열려 있을 수 있습니다. 최신 로그 백업 파일만 정합성이 보장되지 않을 수 있으며, 이러한 파일은 "hdbbackupcheck" 도구를 사용하여 재해 복구 사이트에서 정방향 복구를 수행하기 전에 확인해야 합니다.

pr1adm@hana-10: > hdbbackupcheck /hanabackup/PR1/log/SYSTEMDB/log_backup_0_0_0_0.1589289811148
Loaded library 'libhdbcsaccessor'
Loaded library 'libhdblivecache'
Backup '/mnt/log-backup/SYSTEMDB/log_backup_0_0_0_0.1589289811148' successfully checked.

시스템 및 테넌트 데이터베이스의 최신 로그 백업 파일에 대해 검사를 실행해야 합니다.

"hdbbackupcheck" 도구에서 최신 로그 백업에 대한 오류를 보고하는 경우 최신 로그 백업 세트를 제거하거나 삭제해야 합니다.