玩轉HANA數據庫的備份與恢復(2020 劉欣)

本文檔中所出現的命令,全部在真實環境中使用。

環境:S4 hana 1809 SP3,  HANA2.0 SP 044 , SUSE Linux Enterprise for SAP Applications 12 SP4

 

2020.2.24 中午我演練了一把生產環境的異機恢復:

1、恢復機的HANA數據庫做了一次全備。

2、停下恢復機,擴展了主機內存至192GB。

3、從備份機上拿到凌晨生產機的數據庫全備放到恢復機上。

4、用這一份生產機的備份副本恢復HANA數據庫。

5、啓動SAP服務器驗證。

6、再把之前的恢復機數據庫恢復還原。

總共用時1個小時,終於我可是說玩轉了HANA數據庫的備份與恢復,在虛擬機的世界裏。

 

 

 

一、HANA數據庫的文件備份目錄

數據庫版本: HANA2.0  SP044

HANA默認安裝後,存放備份的位置如圖,對數據庫做一次全庫備份後,

歸檔日誌會不斷產生,如果不管理,用不了多久會爆滿文件系統。

二、HANA數據庫的本地備份、定期清理

全庫備份一般在晚上執行,只要有一份全庫備份,恢復系統將會很輕鬆,所以全庫備份對系統至關重要的。

數據庫歸檔日誌每15分鐘產生一次,有了歸檔日誌,數據庫可用恢復到指定時間點,所以歸檔日誌備份也是很有必要的。

關於全庫定時備份的shell腳本:

S4系統,可以在DB13中定製每天的定時備份。

但我還有一個SAP PO 系統,沒有ABAP端,需要加一個腳本每天定時備份。

1、用vi mybackup.sh 新建這個腳本放到/tmp目錄下:

hdbuserstore set BACKUP podev:38815 SYSTEM PASSWORD

PREFIX="$(date +"%Y%m%d-%H%M%S")"

hdbsql -U BACKUP "BACKUP DATA USING  FILE ('$PREFIX')"

2、在root下用hanadm用戶,crontab -e新建定時執行這個腳本(crontab -l 查看):

0 3 * * *  su - hanadm -c  "sh /tmp/mybackup.sh >> /tmp/backup.log"

3、直接在root下對這個腳本備份執行的結果:

可以看到增加的備份文件,前綴是我想要的“年月日-時分秒”:

關於定期清理的腳本:

這個腳本命令雖然用了rm,但是限定了文件的名稱,所以使用上還是比較安全的。

1、crontab定時執行腳本 sh clear7day.sh

0 4 * * *  sh /tmp/clear7day.sh

2、clear7day.sh腳本內容:清理7天前的日誌和數據庫備份

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數據庫的遠程備份工具和策略(SUSE12 SP4的原生的遠程文件同步工具 rsync)

遠程備份的策略:

對於單機部署的數據庫,如果數據庫物理機故障,數據庫和本地備份都完蛋了,所以我們還可用加一道屏障:把數據庫備份再放一份到其它服務器上。我們找到一臺文件系統空間很大的機器,我們在上面發動我們的備份項目,把其它數據庫上的本地備份都拉到這一臺備份機上。

SUSE遠程文件同步工具 rsync:

非常好的事情,安裝HANA的SUSE Linux Enterprise for SAP Applications 12 SP4的操作系統,自帶遠程文件同步工具rsync,

我們不用任何操作就可用使用rsync, 看看它的help:   

Usage: rsync [OPTION]... SRC [SRC]... DEST

 

--------在ERP-DEVpodev文件過來,放到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

 

同樣,異地備份也需要有一張清晰的表:

最後就是在備份目錄怎麼自動清理太老的備份了,以免把遠程備份的目錄漲爆。

 

 

四、輕鬆的異機恢復

 

TO BE CONTINUE...

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章