我们已经准备好了,你呢?

2023我们与您携手共赢,为您的企业形象保驾护航!


喜讯:国内、香港、海外云服务器租用特惠活动,2核/4G/10M仅需31元每月,点击抢购>>>

点击这里注册天翼云特邀VIP帐号,立即体验云服务备份>>>


本章节以SuSE 11 SP4 for SAP操作系统下HANA 2.0单机版为例,介绍如何通过自定义脚本来冻结、解冻HANA数据库,以实现对HANA数据库的数据库备份。

场景介绍

某企业购买了云主机,并在上面安装了HANA 2.0单机版数据库,用于存放业务数据,随着数据量的增加,之前的崩溃一致性保护已经满足不了RTO、RPO的要求,决定采用应用一致性备份,减小RTO与RPO。

数据准备

准备项说明示例
HANA用户名连接HANA SYSTEMDB数据库时使用的用户名system
HANA密码连接HANA SYSTEMDB数据库时使用的密码Example@123
HANA实例编号连接HANA数据库时使用的实例编号00
HANA SID连接HANA数据库时使用的SIDWXJ

详细步骤

步骤1、加密HANA用户密码,供自定义脚本使用。

1.登录HANA服务器,输入 cd /home/rdadmin/Agent/bin/ ,进入Agent目录。

2.执行 /home/rdadmin/Agent/bin/agentcli encpwd ,回显如下:

Enter password:

输入HANA用户的密码,并按“Enter”,屏幕上就会打印出加密后的密码,将其拷贝到剪贴板中。

步骤2、执行 cd /home/rdadmin/Agent/bin/thirdparty/ebk_user ,进入自定义脚本目录,执行 vi hana_freeze.sh ,打开HANA示例冻结脚本。

步骤3、将下图所示的HANA_USER HANA_PASSWORD INSTANCE_NUMBER DB_SID修改为实际值,其中HANA_PASSWORD为步骤1的屏幕输出。

2.png

也可以使用sed命令来直接进行修改:

sed -i 's/^HANA_USER=./HANA_USER=" XXX "/' hana_freeze.sh hana_unfreeze.sh ,其中XXX*为数据库用户名。

sed -i 's/^HANA_PASSWORD=./HANA_PASSWORD=" XXX "/' hana_freeze.sh hana_unfreeze.sh ,其中XXX*为步骤1中打印出的密码。

sed -i 's/^INSTANCE_NUMBER=./INSTANCE_NUMBER=" XXX "/' hana_freeze.sh hana_unfreeze.sh ,其中XXX*为数据库实例编号。

sed -i 's/^DB_SID=./DB_SID=" XXX "/' hana_freeze.sh hana_unfreeze.sh ,其中XXX*为数据库SID。

此操作会同时修改冻结解冻脚本,所以无需再执行步骤3。

步骤4、执行 vi hana_unfreeze.sh ,打开HANA示例解冻脚本,修改此脚本中的用户名、密码、实例编号与SID

hana_freeze.sh与hana_unfreeze.sh脚本实现了基本的数据库冻结与解冻操作,如果你在冻结、解冻时有其它额外步骤需要执行,可以自行在其中进行修改。

警告:

冻结SAP HANA数据库时,按照SAP官方建议,需要冻结Data卷的XFS文件系统,否则可能出现数据不一致的问题。在此示例脚本中,将会查询出HANA使用的Data卷挂载点,并用xfs_freeze 命令进行冻结。

如果HANA系统未按照SAP官方建议使用一个独立分区来存放Data卷数据,而是与系统卷共用一个分区,则请修改hana_freeze.sh脚本,注释掉xfs_freeze相关行,防止整个系统都被冻结,但此时可能出现备份数据不一致的问题。




推荐:TOP云智能建站优惠活动,仅880元即可搭建一个后台管理五端合一的智能网站(PC网站、手机网站、百度智能小程序、微信小程序、支付宝小程序),独享百度搜索SEO优势资源,让你的网站不仅有颜值有排面,更有排名,可以实实在在为您带来效益,请点击进入TOP云智能建站>>>,或咨询在线客服了解详情。


我们已经准备好了,你呢?

2023我们与您携手共赢,为您的企业形象保驾护航!

在线客服
联系方式

热线电话

131-3501-0006

上班时间

周一到周五

公司电话

130-0743-9476

二维码
线