玩转HANA数据库的备份与恢复(2020 刘欣)
本文檔中所出現(xiàn)的命令,全部在真實(shí)環(huán)境中使用。
環(huán)境:S4 hana 1809 SP3,? HANA2.0 SP 044 ,?SUSE?Linux Enterprise for?SAP?Applications 12 SP4
?
2020.2.24 中午我演練了一把生產(chǎn)環(huán)境的異機(jī)恢復(fù):
1、恢復(fù)機(jī)的HANA數(shù)據(jù)庫(kù)做了一次全備。
2、停下恢復(fù)機(jī),擴(kuò)展了主機(jī)內(nèi)存至192GB。
3、從備份機(jī)上拿到凌晨生產(chǎn)機(jī)的數(shù)據(jù)庫(kù)全備放到恢復(fù)機(jī)上。
4、用這一份生產(chǎn)機(jī)的備份副本恢復(fù)HANA數(shù)據(jù)庫(kù)。
5、啟動(dòng)SAP服務(wù)器驗(yàn)證。
6、再把之前的恢復(fù)機(jī)數(shù)據(jù)庫(kù)恢復(fù)還原。
總共用時(shí)1個(gè)小時(shí),終于我可是說玩轉(zhuǎn)了HANA數(shù)據(jù)庫(kù)的備份與恢復(fù),在虛擬機(jī)的世界里。
?
?
?
一、HANA數(shù)據(jù)庫(kù)的文件備份目錄
數(shù)據(jù)庫(kù)版本: HANA2.0? SP044
HANA默認(rèn)安裝后,存放備份的位置如圖,對(duì)數(shù)據(jù)庫(kù)做一次全庫(kù)備份后,
歸檔日志會(huì)不斷產(chǎn)生,如果不管理,用不了多久會(huì)爆滿文件系統(tǒng)。
二、HANA數(shù)據(jù)庫(kù)的本地備份、定期清理
全庫(kù)備份一般在晚上執(zhí)行,只要有一份全庫(kù)備份,恢復(fù)系統(tǒng)將會(huì)很輕松,所以全庫(kù)備份對(duì)系統(tǒng)至關(guān)重要的。
數(shù)據(jù)庫(kù)歸檔日志每15分鐘產(chǎn)生一次,有了歸檔日志,數(shù)據(jù)庫(kù)可用恢復(fù)到指定時(shí)間點(diǎn),所以歸檔日志備份也是很有必要的。
關(guān)于全庫(kù)定時(shí)備份的shell腳本:
S4系統(tǒng),可以在DB13中定制每天的定時(shí)備份。
但我還有一個(gè)SAP PO 系統(tǒng),沒有ABAP端,需要加一個(gè)腳本每天定時(shí)備份。
1、用vi mybackup.sh 新建這個(gè)腳本放到/tmp目錄下:
hdbuserstore set BACKUP podev:38815 SYSTEM PASSWORDPREFIX="$(date +"%Y%m%d-%H%M%S")"hdbsql -U BACKUP "BACKUP DATA USING FILE ('$PREFIX')"2、在root下用hanadm用戶,crontab -e新建定時(shí)執(zhí)行這個(gè)腳本(crontab -l 查看):
0 3 * * * su - hanadm -c "sh /tmp/mybackup.sh >> /tmp/backup.log"3、直接在root下對(duì)這個(gè)腳本備份執(zhí)行的結(jié)果:
可以看到增加的備份文件,前綴是我想要的“年月日-時(shí)分秒”:
關(guān)于定期清理的腳本:
這個(gè)腳本命令雖然用了rm,但是限定了文件的名稱,所以使用上還是比較安全的。
1、crontab定時(shí)執(zhí)行腳本 sh clear7day.sh
0 4 * * * sh /tmp/clear7day.sh2、clear7day.sh腳本內(nèi)容:清理7天前的日志和數(shù)據(jù)庫(kù)備份
find /hana/shared/HAN/HDB88/backup/log/SYSTEMDB/log_backup* -mtime +7 -exec rm -f {} \; find /hana/shared/HAN/HDB88/backup/log/DB_HAN/log_backup* -mtime +7 -exec rm -f {} \;find /hana/shared/HAN/HDB88/backup/data/DB_HAN/*databackup* -mtime +7 -exec rm -rf {} \;本地備份策略完成后,有一張很清晰的表:
?
?
三、HANA數(shù)據(jù)庫(kù)的遠(yuǎn)程備份工具和策略(SUSE12 SP4的原生的遠(yuǎn)程文件同步工具 rsync)
遠(yuǎn)程備份的策略:
對(duì)于單機(jī)部署的數(shù)據(jù)庫(kù),如果數(shù)據(jù)庫(kù)物理機(jī)故障,數(shù)據(jù)庫(kù)和本地備份都完蛋了,所以我們還可用加一道屏障:把數(shù)據(jù)庫(kù)備份再放一份到其它服務(wù)器上。我們找到一臺(tái)文件系統(tǒng)空間很大的機(jī)器,我們?cè)谏厦姘l(fā)動(dòng)我們的備份項(xiàng)目,把其它數(shù)據(jù)庫(kù)上的本地備份都拉到這一臺(tái)備份機(jī)上。
SUSE遠(yuǎn)程文件同步工具 rsync:
非常好的事情,安裝HANA的SUSE?Linux Enterprise for?SAP?Applications 12 SP4的操作系統(tǒng),自帶遠(yuǎn)程文件同步工具rsync,
我們不用任何操作就可用使用rsync, 看看它的help:? ?
Usage: rsync [OPTION]... SRC [SRC]... DEST
?
--------在ERP-DEV上拉podev的文件過來,放到10目錄中---------
rsync -avP? 192.168.1.10:/hana/shared/HAN/HDB88/backup/? /backup2/otherhost/10
--------在ERP-DEV上拉PRDHANA的文件過來,放到17目錄中---------
rsync -avP? 192.168.1.17:/hana/shared/HAP/HDB00/backup/? /backup2/otherhost/17
?
同樣,異地備份也需要有一張清晰的表:
最后就是在備份目錄怎么自動(dòng)清理太老的備份了,以免把遠(yuǎn)程備份的目錄漲爆。
?
?
四、輕松的異機(jī)恢復(fù)
?
TO BE CONTINUE...
?
?
總結(jié)
以上是生活随笔為你收集整理的玩转HANA数据库的备份与恢复(2020 刘欣)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php access 单引号,Acces
- 下一篇: 网络安全-MySQL数据库