SAP-使用第三方软件备份SAP HANA:如何保护SAP HANA数据库

时间:2024-07-04 20:57:07
SAP

如何保护SAP HANA数据库

SAP HANA是内存数据库,数据库运行时,数据都放在内存中,如何备份HANA数据库呢?为了更好理解HANA数据库的备份原理,首先我们分析下HANA数据保护机制。大家都知道当服务器断电时,放在内存里的数据就会全丢失,为了避免这类内存故障,HANA数据库会定时把数据存储到持久性存储(磁盘)上,主要有以下两个机制:

  • 保护点(Savepoint)

    HANA数据库定时会发起保护点操作,默认是5分钟进行一次,保护点操作会把数据库中的数据及Undo信息一起写入到磁盘上,Undo信息中包含了未提交的事务。HANA系统能从保护点进行完全恢复。

  • 重做日志(Redo)

    数据库的事务也会记录在内存中的Redo日志缓存中,默认Redo缓存为1MB,当事务被提交或当日志缓存写满时,HANA数据库会把缓存中的Redo日志写到磁盘上。利用Redo日志,可以把HANA数据库恢复到保护点后的某一个时间点。

利用持久性存储,HANA可以防止任何内存故障,但一旦持久性存储发生故障,HANA数据仍然会被破坏而无法恢复。需要利用备份来保护持久性存储上的数据,把持久性存储上的数据备份到外部存储上,这样才能达到数据保护目的。在数据备份时先会触发一个保存点(Savepoint),确保持久性存储上的数据具有数据库一致的映像,确保数据库可恢复。目前,SAP数据备份支持在线全备份、增量备份、差量备份。备份过程不具备中断再续的能力,如果备份过程中发生错误,整个数据库备份将从头再来。

持久性存储上的Redo日志也需要备份到外部存储上,如果持久性存储上的日志不备份,日志是不能被删除的,大量的日志会把日志存储区填满,导致数据库被锁起来。图2是数据备份和日志备份的示意图。

图2 数据备份和日志备份示意图

support.huaweicloud.com/backup-sap/sap_09_0014.html