在设备管理控制台中装载并迁移 SAP HANA 备份,以便恢复到任何目标

此信息适用于 SAP HANA 横向扩容实例。如需了解纵向扩容和 HA 1+1 配置,请参阅 适用于 SAP HANA 的 Backup and DR Service

SAP HANA 横向扩容即时恢复(装载并迁移)

使用 LVM 迁移方法,自动将 HANA 数据从备份/恢复设备暂存磁盘迁移到生产磁盘。在纵向扩容配置或非共享 LVM 多节点横向扩容集群中,当 SAP HANA 数据库在备份/恢复设备暂存磁盘上恢复后,使用 LVM 迁移方法。

恢复脚本

恢复脚本为 /act/custom_apps/saphana/lvm_migrate/hana_lvm_recover_migrate.sh

请参阅脚本详细信息

数据库恢复和迁移

开始恢复前的准备工作

  • 停止 SAP HANA 数据库(对于横向扩容配置,请在所有节点上执行此操作)
    • sapcontrol -nr <instance number> -function StopSystem
    • sapcontrol -nr <instance number> -function GetSystemInstanceList
  • 确保 /etc/fstab 具有 /hana/data 和 /hana/log 装载的 /dev/mapper 条目。
    • 使用 df -kh 获取 /hana/data 和 /hana/log 的 /dev/mapper 条目。
  • 验证 /hana/data 和 /hana/log 是否未被任何进程占用。
    • 使用卸载和重新装载 /hana/data 和 /hana/log 进行检查。
  • 如果配置了 HANA 快速重启,请注释掉 /etc/fstab 下 HANA 快速重启的条目,并卸载快速重启装载点。装载快速重启装载点并取消注释快速重启装载点的 /etc/fstab 条目,以启用快速重启,并在恢复和合并两步装载和迁移的第一步完成后执行此操作。

装载映像

  1. 使用设备管理控制台将备份映像装载到目标服务器:

    1. 以具有特权的用户身份登录设备管理控制台。
    2. 选择所需应用,然后选择访问权限
    3. 选择映像,然后点击装载
    4. 停用 CREATE NEW VIRTUAL APPLICATION 选项,然后选择相应目标节点或集群。如果要装载到横向扩容集群,请确保启用 MOUNT TO ALL CLUSTER SERVERS 选项。
    5. 提供装载点位置,然后点击提交

装载作业完成后,映像将装载到目标 HANA 服务器上的指定位置。

装载并迁移使用场景

两种使用场景

  • 一步装载并迁移。恢复数据库,然后在数据库运行时将数据从备份/恢复设备提供的存储空间迁移到生产存储空间。

  • 两步装载并迁移。恢复数据库的副本。恢复的数据库可从备份/恢复设备运行。 当生产存储空间准备就绪后,您可以在数据库运行时开始将数据迁移到生产存储空间。

一步装载并迁移

装载映像后,您可以在一次运行中恢复和迁移数据。

  1. 在装载映像的目标服务器上运行此脚本。

    /act/custom_apps/saphana/lvm_migrate/hana_lvm_recover_migrate.sh recovermigrate

    如需恢复到特定时间点,请使用 -r 选项:

    /act/custom_apps/saphana/lvm_migrate/hana_lvm_recover_migrate.sh recovermigrate -r <time>

    使用此选项,数据库将恢复,从备份/恢复设备预配的磁盘的卷组将与本地存储空间合并,并且数据库迁移将开始。

  2. 作业成功后,数据将在数据库运行时从备份/恢复设备预配的磁盘移至本地生产存储空间。

如果 HANA 源 SID 和目标 SID 不同

如果 HANA 源 SID 和目标 SID 不同,请在运行 hana_lvm_recover_migrate.sh 脚本之前,在数据和日志装载点中将 SID 目录 重命名为目标 SID。

例如:

源 SID:HPR 目标 SID:HSR 装载点:/mmrestore

  • 在运行 hana_lvm_recover_migrate.sh 脚本之前,必须在 /mmrestore/hana/data 装载点中将目录 /mmrestore/hana/data/HPR 重命名为 /mmrestore/hana/data/HSR
  • 在运行 hana_lvm_recover_migrate.sh 脚本之前,必须在 /mmrestore/hana/log 装载点中将目录 /mmrestore/hana/log/HPR 重命名为 /mmrestore/hana/log/HSR

两步装载并迁移

装载映像后,恢复数据库的副本。恢复的数据库可从备份/恢复设备运行。

  1. 运行 recovermerge 选项,以使数据库副本从装载的映像运行:

    /act/custom_apps/saphana/lvm_migrate/hana_lvm_recover_migrate.sh recovermerge

    如需恢复到特定时间点,请使用 -r 选项:

    /act/custom_apps/saphana/lvm_migrate/hana_lvm_recover_migrate.sh recovermerge -r <time>

    成功恢复后,数据库将在备份/恢复设备装载的设备上运行。数据库已启动并可供应用使用。

  2. 当生产存储空间可用时,在数据库运行时开始将数据迁移到生产存储空间。

/act/custom_apps/saphana/lvm_migrate/hana_lvm_recover_migrate.sh migrate

从备份/恢复设备卸载并删除装载的映像

  1. 以具有特权的用户身份登录设备管理控制台。
  2. 从第 1 步中选择装载的映像。
  3. 点击 Unmount & Delete

脚本详细信息 (hana_lvm_recover_migrate.sh)

脚本中包含以下详细信息。

  • NAME: SAP HANA 恢复帮助脚本
  • 路径: /act/custom_apps/saphana/lvm_migrate/hana_lvm_recover_migrate.sh
  • SYNOPSIS: hana_lvm_recover_migrate.sh <OPERATION> [OPTIONS]
  • 说明:将 SAP HANA 数据从备份/恢复设备恢复到 横向扩容或独立集群。
  • 操作:指定要执行的操作,这是必需的。
  • 合并:合并 Actifio 和生产卷组。
  • 迁移:将卷从 Actifio 磁盘迁移到生产磁盘。
  • 恢复:运行 Actifio 横向扩容恢复脚本。
  • RecoverMerge:运行 RecoverMerge
  • RecoverMigrate。运行 RecoverMigrate
  • 回滚。使集群处于可以再次尝试恢复的状态。
  • 测试。可用于测试作业配置。

可选参数

该脚本还提供以下可选参数来替换任何值。

    -a \<name\>: mount job name override

    -A \<log|params\>: Method to discover job name, log file or params file

    -C \<count\>: Expected node count override

    -D \<path\>: Path to the HANA data mount point, expected to be the same
    for all nodes

    -h: Display help documentation and exit, specify operation for more info

    -I \<name\>: HANA database SID override

    -K \<user\>: HANA keystore user to use for the restore

    -L \<path\>: Path to the HANA log mount point, expected to be the same
    for all nodes

    -r \<time\>: Timepoint to which to recover the HANA database

    -R: Assert that the recover script has already been run

    -S \<path\>: Path to the shared directory, expected to be the same for
    all nodes

    -t \<minutes\>: Number of minutes without an update before a job is
    considered timed out

    -T \<minutes\>: Number of minutes to allow for starting the HANA DB
    service

    -u \<user\>: HANA service account username \<adm user\>

    -v: Enable verbose logging

    -V \<version\>: HANA version

    -w \<seconds\>: Base wait time, job status checks 1x, file system
    operations 4x

脚本选项

恢复

如果您不想将数据迁移到生产存储空间,请运行恢复选项。

/act/custom_apps/saphana/lvm_migrate/hana_lvm_recover_migrate.sh recover

默认情况下,该脚本将从 UDSAgent 日志中提取最新的作业编号,并收集作业所需的所有必要信息,例如目标装载点和数据库 SID。 如果此目标服务器上的最后一个作业不是装载作业,则需要提供最后一个装载作业的 Job # (使用 -a 选项)来替换装载作业的默认值:

/act/custom_apps/saphana/lvm_migrate/hana_lvm_recover_migrate.sh recover -a <Job_#>

如需恢复到特定时间点(使用 -r 选项)

/act/custom_apps/saphana/lvm_migrate/hana_lvm_recover_migrate.sh recover -a <Job_#> -r <time>

成功恢复后,数据库将在备份/恢复设备装载的设备上运行。

合并

当数据库从设备装载的设备运行时,可以在步骤 A 中的恢复操作后运行此选项,以将数据迁移到生产存储空间。 在此过程中,数据库将关闭,生产存储空间的卷组将与备份/恢复设备卷组合并。 成功合并操作后,数据库将恢复在线状态。

传递 merge 选项时,预期数据库的恢复过程已完成。如果恢复是手动完成的,未使用此脚本,则用户可以指定 -R 选项来确认恢复已运行。如果未完成恢复,脚本将不会继续执行合并过程。

/act/custom_apps/saphana/lvm_migrate/hana_lvm_recover_migrate.sh merge

recovermerge

如果您计划将数据迁移到生产存储空间,请运行 recovermerge 选项。recovermerge 选项是恢复和合并过程的超集,其中合并操作作为恢复的一部分完成。这样可以避免在迁移过程开始时重启数据库。

/act/custom_apps/saphana/lvm_migrate/hana_lvm_recover_migrate.sh recovermerge

如果此目标服务器上的最后一个作业不是装载作业,则需要 提供最后一个装载作业的 Job #(使用 -a 选项)来替换 装载作业的默认值:

/act/custom_apps/saphana/lvm_migrate/hana_lvm_recover_migrate.sh recovermerge -a <Job_#>

如需恢复到特定时间点,请使用 -r 选项:

/act/custom_apps/saphana/lvm_migrate/hana_lvm_recover_migrate.sh recovermerge -a <Job_#> -r <time>

成功恢复后,脚本将继续运行合并操作,其中生产存储空间的卷组将与备份/恢复设备卷组合并。在此过程中,数据库将关闭,成功合并操作后,数据库将恢复在线状态。

migrate

运行脚本的 recover 或 recovermerge 运行后,运行 migrate 选项,系统即可开始将数据从备份/恢复设备提供的存储空间迁移到生产存储空间,同时数据库也在运行。

/act/custom_apps/saphana/lvm_migrate/hana_lvm_recover_migrate.sh migrate

如果未完成恢复,脚本将不会继续执行迁移过程。在迁移过程中,脚本会检查是否已完成合并操作,然后继续迁移而不重启数据库;否则,它会将生产存储空间的卷组与备份/恢复设备卷组合并。在此过程中,数据库将关闭,成功合并操作后,数据库将恢复在线状态。

recovermigrate

recovermigrate 是 recover、recovermerge 和 migrate 操作的超集。在此过程中,数据库将恢复,从备份/恢复设备预配的磁盘的卷组将与本地存储空间合并,并且数据库迁移将开始。

脚本为 /act/custom_apps/saphana/lvm_migrate/hana_lvm_recover_migrate.sh recovermigrate

如果此目标服务器上的最后一个作业不是装载作业,则需要 提供最后一个装载作业的Job #(使用 -a 选项)来替换 装载作业的默认值:

/act/custom_apps/saphana/lvm_migrate/hana_lvm_recover_migrate.sh recovermigrate -a <Job_#>

如需恢复到特定时间点,请使用 -r 选项:

/act/custom_apps/saphana/lvm_migrate/hana_lvm_recover_migrate.sh recovermigrate -a <Job_#> -r <time>

对于横向扩容配置,迁移将在集群的所有节点上并行启动。

作业成功后,数据将在数据库运行时从备份/恢复设备预配的磁盘移至本地生产存储空间。

回滚

回滚选项会检查作业日志,以确定恢复、合并、迁移、recovermerge 或 recovermigrate 作业的阶段,并恢复对数据库服务器所做的任何更改。如果卷组在本地生产磁盘和备份/恢复设备暂存磁盘之间合并,则暂存磁盘物理卷将从生产卷组中移除,以执行回滚操作。

/act/custom_apps/saphana/lvm_migrate/hana_lvm_recover_migrate.sh rollback

测试

测试 操作可用于确保环境配置正确,以便在启动任何实际恢复操作之前运行。由于测试 操作不会进行任何更改,因此可以根据需要运行多次,也可以完全跳过。

确保在测试运行期间检查以下项:

  • 节点检查;此任务在所有操作中运行。
  • 检查预期节点数是否与实际节点数一致。
  • 检查非主节点是否具有 SSH 访问权限(如果适用)。
  • 检查节点是否可以访问共享目录。

适用于 SAP HANA 横向扩容的 Backup and DR Service 文档

此页面是介绍如何使用 Backup and DR Service 保护和恢复 SAP HANA 横向扩容实例的一系列页面中的一个。 您可以在以下页面中找到更多信息: