将 SAP ERP 6.0 与 IBM Db2 迁移到 IBM Power Virtual Server
请参考以下指南,将您的 SAP 企业资源规划系统(ERP)从 IBM Db2 迁移到 IBM Power Virtual Server。 您有多种方法可以将 IBM Db2 数据库迁移到目标系统。
IBM Db2 SAP 迁移选项
对于 SAP ERP 和 IBM Db2,您有两种迁移选择:
-
迁移选项1——备份和恢复 基于标准的行政任务,例如启动、停止、备份和恢复。 这种方法比较简单,但需要在迁移期间停机。
-
迁移选项2—— IBM Db2 高可用性和灾难恢复(HADR) 是一种针对 SAP 生产系统的停机时间优化方法。 它基于 IBM Db2 高可用性和灾难恢复( IBM Db2 HADR)数据库同步和在线备份。 系统停机时间被最小化,但与选项1相比,该方法需要更高的配置。
迁移选项1——备份和恢复
备份和恢复是迁移开发或测试 SAP 系统的典型选项。 这种迁移选项基于源系统的数据库备份和数据库还原,用于填充预安装目标系统中的数据库。
完成迁移需要以下步骤:
迁移选项1——备份和还原方法的特征:
- 停机时间:由于在迁移过程中 SAP 系统不可用,因此需要 SAP 系统计划停机。
- 后备:源 SAP 系统未发生任何变化。 如果需要,后备操作将停止迁移并重新启动源 SAP 系统。
- 复杂性:基于标准管理任务。 这种迁移方案是最简单的。
准备迁移
使用以下步骤准备迁移。
源服务器和目标服务器上需要定义的所有环境变量。 在源 SAP 服务器上运行命令时,将命令保存到临时文本文件中。 目标服务器上需要执行与 “在目标系统上恢复数据库”一章中相同的命令。
请根据您的需要设置以下环境变量。
-
在源系统上以
root
用户身份启动C Shell会话:csh
定义环境变量的命令语法取决于外壳类型。 Db2 和 SAP 管理员用户
db2<sid>
和<sid>adm
的默认外壳类型为C Shell。 使用相同的shell时,您可以复制命令示例并将其粘贴到会话环境中。 -
定义目标迁移系统的主机名(例如:
cdb6ecc1
),并将其替换为目标主机名:set TARGETSERVER=cdb6ecc1
确保源系统和目标 SAP 系统上运行的 SAP ERP软件和 IBM Db2 数据库版本相同。
-
定义 SAP 实例管理员(本示例适用于 SAP 实例
th1
),然后根据您的系统进行修改。set SIDADM=th1adm
-
定义 IBM Db2 数据库名称——还是以
th1
为例,然后根据您的系统进行修改:set DBNAME=th1
-
定义 IBM Db2 数据库管理员:
set DB2ADM=db2th1
-
定义一个目录来存储备份文件:
set BACKUPDIR=/db2/backup
-
如果不存在,请创建以下目录:
mkdir -p $BACKUPDIR
并将备份目录的所有权转移给 Db2 管理员:
chown $DB2ADM $BACKUPDIR
该备份目录需要有足够的空间来存储压缩的备份文件。 通过调用
GET_DBSIZE_INFO
程序确定当前 IBM Db2 数据库的大小。 更多信息,请参阅 GET_DBSIZE_INFO过程。
关闭 SAP 应用程序并停用源服务器上的数据库
请按照以下步骤关闭 SAP 应用程序并停用源服务器上的数据库。
-
要启动或停止 SAP 系统,请使用 SAP 实例管理员帐户
$SIDADM
:su - $SIDADM
-
要停止 SAP 系统并继续运行数据库,请使用以下命令:
stopsap r3
您也可以通过运行以下命令来检查 SAP 是否处于所需状态:
stopsap check
预期输出结果如下:
Checking db6 Database Database is running ------------------------------------------- Checking SAP TH1 Instance ASCS01 ------------------------------------------- Instance ASCS01 is not running Checking SAP TH1 Instance D00 ------------------------------------------- Instance D00 is not running
-
对于 Db2 命令,请结束
$SIDADM
用户会话:exit
-
切换到
$DB2ADM
用户:su - $DB2ADM
在停用数据库之前,您还可以通过运行以下命令检查是否有应用程序仍连接到数据库:
db2 list applications
以下示例为预期输出。
SQL1611W No data was returned by Database System Monitor.
如果应用程序仍在列表中,请停止应用程序并重新检查。 如果外部应用程序仍然无法停止,请尝试通过
db2 force applications all
断开应用程序与数据库服务器的连接。 -
再次为 DB2ADM 用户定义环境变量:
set DBNAME=th1
set BACKUPDIR=/db2/backup
-
IBM Db2 离线备份需要停用数据库。 使用以下命令停用数据库:
db2 deactivate database $DBNAME
预期输出结果如下
DB20000I The DEACTIVATE DATABASE command completed successfully.
在源系统上使用 IBM Db2 离线备份
请按照以下步骤在源系统上使用 Db2 离线备份。
在 准备迁移步骤 中创建了一个备份目录,用于存储压缩的离线备份。
-
请确认备份目录有足够的可用空间来存储备份文件:
df -m $BACKUPDIR
-
启动 IBM Db2 离线备份:
db2 backup database $DBNAME to $BACKUPDIR compress
该命令会运行很长时间,具体取决于数据库的大小。
可以使用以下命令跟踪备份进度:
db2 list utilities show detail
备份命令输出末尾有一个时间戳。 在目标系统上还原数据库时 需要此时间戳。
示例输出:
Backup successful. The timestamp for this backup image is : 20240730170709
请记住这个时间戳,在接下来的两个步骤中需要用到它。
-
使用环境变量来存储时间戳:
set TIMESTAMP=<your timestamp>
IBM Db2 备份时间戳的格式为 YYYMMDDHHMMSS(年-月-日-时-分-秒),看起来像
20240730170709
。 目标 SAP 服务器上也需要这个时间戳。 将此TIMESTAMP
定义命令添加到 “准备迁移”的 已保存命令列表中。 -
使用以下命令切换到备份文件夹:
cd $BACKUPDIR
-
检查文件名中包含时间戳的文件:
ls -l *$TIMESTAMP*
示例输出:
TH1.0.db2th1.DBPART000.20240730170709.001
输出中列出的文件是下一步传输到目标系统的备份文件。
传输备份文件
请按照以下步骤传输备份文件。
-
将备份文件从源 SAP 系统复制到目标系统:
scp ${BACKUPDIR}/*${TIMESTAMP}* \ ${TARGETSERVER}:${BACKUPDIR}
本例使用安全复制(SCP),这是一种较慢的数据传输方式。 您可以将备份文件直接传输到 IBM AIX LPAR in Power Virtual Server 或 IBM Cloud Object Storage。 如果您使用SCP或SFTP与 IBM Cloud Object Storage 连接,则系统会假定您正在使用 IBM FileManage 网关服务,或在目标 IBM Power Virtual Server 环境内或旁边安装并配置了SFTP服务器来接收传输。
更快的选择是 IBM 的高性能 Aspera 数据传输产品。 在许多情况下,IBM Aspera 传输数据的速度比传统的基于 TCP 的协议快几倍。 如需了解更多信息,请访问 IBM Aspera 技术。
本参考资料还包含 加速网络传输迁移指南。
在目标系统上恢复数据库
请按照以下步骤在目标系统上还原数据库。
-
登录目标服务器,开始恢复程序:
ssh $DB2ADM@$TARGETSERVER
目标服务器无法知道源系统上定义的环境变量。 但目标系统需要变量
$DBNAME
、$TIMESTAMP
和$SIDADM
。 要定义这些变量,请运行您 在准备迁移步骤中 保存的命令列表,并在源系统上使用 IBM Db2 离线备份,或者重新定义环境变量。 -
完整的还原过程需要停用的 IBM Db2 数据库。 使用与之前在预安装目标 SAP 系统上相同的步骤:
db2 list applications
预期输出结果如下
SQL1611W No data was returned by Database System Monitor.
-
停用 IBM Db2 数据库:
db2 deactivate database $DBNAME
-
进行完整的数据库还原:
db2 restore database $DBNAME \ from $BACKUPDIR \ taken at $TIMESTAMP
在还原命令中添加
replace existing
可避免覆盖提示。 -
Db2 命令询问您是否希望通过恢复备份来覆盖现有数据库:
SQL2523W Warning! Restoring to an existing database that is different from the database on the backup image, but have matching names. The target database is overwritten by the backup version. The Roll-forward recovery logs associated with the target database is deleted. Do you want to continue ? (y/n)
输入
y
并按 Enter。预期输出结果如下
DB20000I The RESTORE DATABASE command completed successfully.
如果还原失败,请提前通过
db2 drop database $DBNAME
将数据库从目标系统上删除,然后重新执行还原命令。 -
要完成还原,请使用以下命令:
db2 rollforward db $DBNAME to end of backup and stop
目标数据库现在包含源系统数据。
启动 SAP 目标系统
使用以下步骤启动目标系统、
-
切换到 SAP 实例管理员:
login $SIDADM
-
启动 SAP 应用程序:
startsap
以下示例为预期输出:
Checking db6 Database Database is running ------------------------------------------- Starting Startup Agent sapstartsrv OK Instance Service on host <TARGET> started ------------------------------------------- starting SAP Instance ASCS01 Startup-Log is written to /home/th1adm/startsap_ASCS01.log ------------------------------------------- /usr/sap/TH1/ASCS01/exe/sapcontrol -prot NI_HTTP -nr 01 -function Start Instance on host <TARGET> started Starting Startup Agent sapstartsrv OK Instance Service on host <TARGET> started ------------------------------------------- starting SAP Instance D00 Startup-Log is written to /home/th1adm/startsap_D00.log ------------------------------------------- /usr/sap/TH1/D00/exe/sapcontrol -prot NI_HTTP -nr 00 -function Start Instance on host <TARGET> started
调整 SAP 系统的DNS记录,使其指向目标 SAP 服务器,确保客户端系统(正在运行的 SAP 登录GUI)连接到目标服务器。
迁移已完成。
- SAP 源服务器上的系统崩溃了
- SAP 目标服务器上的系统已启动并运行
迁移选项2—— IBM Db2 高可用性和灾难恢复(HADR)
迁移选项2是一种停机时间优化的程序。 它通过 IBM Db2 HADR实现了备份、恢复和同步双方数据库的功能。 如果数据库已同步且环境已准备好进行迁移,则核心迁移将切换到预先安装的目标 SAP 服务器。
如果源系统使用 IBM Db2 集群或启用了 IBM Db2 HADR,迁移将扩展现有的HADR配置。 特殊情况——迁移源 IBM Db2 集群 描述了所需步骤并提供了链接。
如果源端未启用 IBM Db2 HADR,则需要执行以下步骤:
- 准备迁移
- 确保启用 IBM Db2 存档日志记录
- 从源系统数据库创建在线备份
- 将备份文件传输到目标系统
- 恢复目标系统
- 在目标系统和源系统上定义HADR本地和远程服务端口
- 在目标系统和源系统上配置HADR
- 启动HADR并检查同步数据
- 运行核心迁移步骤
迁移选项 2 - IBM Db2 HADR 的特点:
- 一般停机时间:当服务器从源切换到目标时,停机时间很短。 切换前,源 SAP 系统正在运行。 切换后,目标 SAP 系统将接管。
- 停机,循环记录:HADR要求 IBM Db2 数据库处于
archive logging
模式。 如果您的 IBM Db2 数据库处于circular logging
模式,在使用HADR之前,您需要将 IBM Db2 数据库迁移到archive logging
模式。 这一步将导致数据库一次性停机。 - 回退:指在完全迁移期间,源 SAP 系统一直在运行,直到切换。 在您进行切换之前,无需任何特殊的备用选项。 如果切换前后的步骤不成功,您可以倒退步骤,重新启动源 SAP 系统。
特殊情况——迁移源 IBM Db2 集群
如果源 SAP 系统是 IBM Db2 HADR集群,则需要扩展HADR配置以包括目标服务器。 在这种情况下,步骤更容易。
本文介绍的大部分配置步骤已经设置完毕。 目标系统需要作为辅助节点添加到现有的 IBM Db2 HADR配置中。 更多信息,请参阅 为现有 Db2 HADR对添加新的辅助备用步骤 IBM Db2 支持文章。
准备迁移
请按照以下步骤准备 SAP 系统进行迁移。
在准备迁移时,请牢记以下信息。
-
您需要在设置中定义两个TCP端口号。
-
与HADR同步需要两个开放的网络端口:
- 当地对外交通港口
- 用于接收流量的远程端口
-
两个端口都配置在两个 IBM Db2 系统上,但顺序相反。 本示例使用端口号
5920/tcp
和5921/tcp
,但您可以根据需要调整这些端口。 -
防火墙必须允许源系统和目标系统之间的TCP通信。 确保在所有相关防火墙以及源系统和目标系统上配置所需的防火墙规则。
请根据您的配置设置以下环境变量。
定义的所有环境变量在源服务器和目标服务器上都是必需的。 在源 SAP 服务器上运行命令时,将其保存到临时文本文件中。 目标服务器上需要执行与 “在目标系统上恢复数据库”中相同的命令。
-
为目标迁移系统定义主机名。
cdb6ecc1
是一个示例,请使用以下命令将其替换为目标主机名:set TARGETSERVER=cdb6ecc1
请确保您的目标服务器正在运行与源 SAP 系统版本相同的 SAP ERP软件和 IBM Db2 数据库。
-
使用以下命令定义 SAP 实例管理员并将其更改为与您的系统匹配(本示例适用于 SAP 实例
th1
):set SIDADM=th1adm
-
定义 IBM Db2 数据库名称——同样,
th1
是一个示例。 请根据您的系统进行更改:set DBNAME=th1
-
定义 IBM Db2 数据库管理员:
set DB2ADM=db2th1
-
定义一个目录来存储备份文件:
set BACKUPDIR=/db2/backup
-
如果不存在,请创建以下目录:
mkdir -p $BACKUPDIR
并将备份目录的所有权转移给 Db2 管理员:
chown $DB2ADM $BACKUPDIR
该备份目录需要有足够的空间来存储压缩的备份文件。 通过调用
GET_DBSIZE_INFO
程序确定当前 IBM Db2 数据库的大小。 更多信息,请参阅 GET_DBSIZE_INFO过程。
确保启用 IBM Db2 存档日志记录
IBM Db2 高可用性和灾难恢复(HADR)需要启用 archive logging
。
circular logging
在您安装 HADR后,默认启用。IBM Db2 大多数带有 IBM Db2 的 SAP 系统都启用了 archive logging
。
检查存档记录方法
要检查配置的日志记录方法,请执行以下步骤。
-
切换到 IBM Db2 数据库 admin:
su - $DB2ADM
-
检索日志归档方法配置选项:
db2 get db cfg for th2 | grep LOGARCHMET
-
如果日志存档方法中至少有一个设置为
ON
,请继续下一部分。 请确保两者均未设置为OFF
。 启用存档日志记录后的输出结果如下:First log archive method (LOGARCHMETH1) = DISK:/db2/logarch/ Second log archive method (LOGARCHMETH2) = OFF
-
如果两种日志归档方法均为
OFF
,则需要先配置归档日志。 输出结果如下:First log archive method (LOGARCHMETH1) = OFF Second log archive method (LOGARCHMETH2) = OFF
配置存档日志
IBM Db2 HADR 需要存档记录。 如果将 LOGARCHMETH1 和 LOGARCHMETH2 设置为 OFF
,请按照以下步骤启用存档日志。
启用存档记录需要停机。
-
以 SAP 管理员用户身份启动,以停止 SAP 系统:
su - $SIDADM
-
停止 SAP 系统,但让数据库继续运行:
stopsap r3
-
退出 SAP 管理用户:
exit
-
切换到 IBM Db2 管理账户:
su - $DB2ADM
-
使用已保存的命令确保环境变量(如
DBNAME
和BACKUPDIR
)已设置。 -
定义日志归档文件的目录:
set LOGARCHDIR=/db2/log_archive
如果可能,请在单独的分区上创建日志存档目录。 存档日志分区取决于LPARs磁盘设置,不在本文讨论范围之内。 请记住,如果源系统是 IBM Db2 集群,则日志存档是节点之间的共享目录。
-
创建日志存档目录,至少使用以下命令:
mkdir $LOGARCHDIR
-
检查创建的目录:
ls -ld $LOGARCHDIR
样本输出:
drwxr-xr-x 7 db2th1 dbth1adm 256 Aug 30 11:24 /db2/log_archive
-
验证目录所有者是否为 Db2 管理员,示例输出中为
db2th1
。 然后,检查所有者是否拥有完全权限rwx
。 -
配置 Db2,使其使用包含此目录的磁盘设备,用于日志归档方法 1:
db2 "update db cfg for $DBNAME using LOGARCHMETH1 DISK:$LOGARCHDIR"
预期的输出:
DB20000I The UPDATE DATABASE CONFIGURATION command completed successfully.
IBM Db2 数据库会在此更改后强制执行备份:
db2 backup database $DBNAME to $BACKUPDIR compress
备份需要一段时间才能完成,具体取决于数据库的大小。
-
使用 SAP 管理员账户$SIDADM重新启动数据库和 SAP 系统:
su - $SIDADM
startsap
从源系统数据库创建在线备份
为了尽量减少 SAP 系统的停机时间,请创建在线 Db2 数据库备份。
-
切换到 Db2 管理员用户:
su - $DB2ADM
-
启动在线备份,包括日志文件:
db2 backup db $DBNAME online to $BACKUPDIR compress include logs
请记住,备份需要一些时间才能完成。
备份完成后,系统会打印时间戳:
Backup successful. The time stamp for this backup image is : 20240913091058
记住这个时间戳。 接下来的两个步骤需要它。
-
使用环境变量来存储时间戳:
set TIMESTAMP=<your timestamp>
IBM Db2 备份时间戳的格式为 YYYMMDDHHMMSS(年-月-日-时-分-秒),看起来像
20240913091058
。 目标 SAP 服务器上也需要这个时间戳。 将此TIMESTAMP
定义命令添加到 准备迁移步骤 中保存的命令列表中。
将备份文件传输到目标系统
请按照以下步骤将备份文件传输到目标系统。
-
将备份文件从源 SAP 系统复制到目标系统:
scp ${BACKUPDIR}/*${TIMESTAMP}* \ ${TARGETSERVER}:${BACKUPDIR}
恢复目标系统
请按照以下步骤恢复目标系统。
-
数据库还原在目标服务器上完成:
ssh $DB2ADM@$TARGETSERVER
目标服务器无法知道源系统上定义的环境变量。 但目标系统需要变量
$DBNAME
、$TIMESTAMP
和$SIDADM
。 要定义这些变量,请运行您 在准备迁移 和 从源系统数据库创建在线备份 步骤中保存的命令列表,或者重新定义环境变量。 -
使用在线备份还原数据库。
db2 restore database $DBNAME \ from $BACKUPDIR \ taken at $TIMESTAMP
Db2 命令询问您是否希望通过恢复备份来覆盖现有数据库:
SQL2523W Warning! Restoring to an existing database that is different from the database on the backup image, but have matching names. The target database will be overwritten by the backup version. The Roll-forward recovery logs associated with the target database will be deleted. Do you want to continue? (y/n)
-
输入
y
并按 Enter。以下示例为预期输出:
DB20000I The RESTORE DATABASE command completed successfully.
如果恢复不成功,请提前通过
db2 drop database $DBNAME
将数据库从目标系统上删除,然后重新执行还原命令。与选项1相反,不向前滚动存档日志。 HADR利用这种状态来同步下一步中更改的数据。 如果源 SAP 系统运行正常,源数据会发生变化。
要传输最新更改,请配置 IBM Db2 HADR 数据库同步。
在目标系统和源系统上定义HADR本地和远程服务端口
请按照以下步骤在目标系统和源系统上定义HADR本地和远程服务端口。
HADR使用两个TCP端口来同步数据。
-
检查
/etc/services
在两个系统上是否都不包含这些TCP端口号。 在两台服务器上配置此文件中的端口号。如果本地和远程 HADR 端口配置在
/etc/services
、IBM Db2 中,则使用服务名称而不是数字,配置的易读性会更高。示例中使用了端口
5920/tcp
和5921/tcp
,但您可以定义不同的端口。要配置的端口编号概览表:
两台服务器上 /etc/services 的TCP端口分配 服务名称 源服务器上的值 目标服务器上的价值 注释 db2th1ha_l 5921/tcp
5920/tcp
本地端口 db2th1ha_r 5920/tcp
5921/tcp
远程端口 -
使用您最喜欢的编辑器更改两台服务器上的
/etc/services
。 -
使用以下命令检查配置文件是否正确:
grep -e '592[01]/' /etc/services
以下几行是源服务器上的预期输出:
db2th1ha_l 5921/tcp # Db2 HADR local port db2th1ha_r 5920/tcp # Db2 HADR remote port
必须在目标服务器上启用端口编号。 以下示例是目标节点的预期输出:
db2th1ha_l 5920/tcp # Db2 HADR local port db2th1ha_r 5921/tcp # Db2 HADR remote port
在目标系统和源系统上配置HADR
HADR需要以下配置。
Db2 HADR参数 | 源服务器上的值 | 目标服务器上的价值 | 注释 |
---|---|---|---|
本地主机 | <源主机名> | <目标主机名> | 您正在使用的系统的主机名 |
HADR_LOCAL_SVC | db2th1ha_l | db2th1ha_l | 本地端口定义为 /etc/services |
远程主机 | <目标主机名> | <源主机名> | 另一个主机名 |
远程服务器 | db2th1ha_r | db2th1ha_r | 远程端口,如 /etc/services |
远程存储 | <db2 实例名称> | <db2 实例名称> | 另一个节点的 IBM Db2 实例名称(不是数据库名称) |
日志索引构建 | ON |
ON |
两位主持人均将 ON 设为开启状态 |
HADR_SYNCMODE | <有效的同步模式> | <有效的同步模式> | 查看HADR同步模式 |
本地和远程主机名(HADR_LOCAL_HOST
和 HADR_REMOTE_HOST
)必须同时启用。HADR_LOCAL_HOST
始终是节点的主机名。 配置命令在远程主机上运行,远程主机是相应其他系统的主机名。
本地和远程服务入口(HADR_LOCAL_SVC
和 HADR_REMOTE_SVC
)是相同的,因为交换机已经在 /etc/services
中配置。
高可用性灾难恢复(HADR)同步模式解释了不同的 IBM Db2 HADR同步选项及其优点。
使用以下命令配置两个系统:
-
本地主机是
hostname
命令向其报告的系统:db2 "update db cfg for $DBNAME using HADR_LOCAL_HOST `hostname`"
-
本地端口是本地端口定义,来自
/etc/services
:db2 "update db cfg for $DBNAME using HADR_LOCAL_SVC db2th1ha_l"
-
对于远程主机,请确认
$TARGETSERVER
指向其他服务器:db2 "update db cfg for $DBNAME using HADR_REMOTE_HOST $TARGETSERVER"
-
远程端口是
/etc/services
的远程端口定义:db2 "update db cfg for $DBNAME using HADR_REMOTE_SVC db2th1ha_r"
-
配置远程 IBM Db2 实例。
作为定位,如果数据库名称是
th1
,则实例名称看起来像db2th1
:db2 "update db cfg for $DBNAME using HADR_REMOTE_INST $DBINST"
-
确保两个系统上的日志索引构建都设置为“开启”:
db2 "update db cfg for $DBNAME using LOGINDEXBUILD ON"
-
定义HADR同步模式。
async
是一个示例,请根据您的环境更改为适合 的HADR同步模式:db2 "update db cfg for $DBNAME using HADR_SYNCMODE async"
启动HADR并检查同步数据
请按照以下步骤启动HADR并检查数据是否同步。
-
在目标服务器上启动待机模式下的HADR。 切换到目标服务器,输入
$DB2ADM
,然后运行以下命令:db2 start hadr on db $DBNAME as standby
预期输出结果如下:
DB20000I The START HADR ON DATABASE command completed successfully.
-
在源服务器上启动HADR作为主服务器。 切换到源服务器(
$DB2ADM
),运行以下命令:db2 start hadr on db $DBNAME as primary
预期输出结果如下:
DB20000I The START HADR ON DATABASE command completed successfully.
-
使用以下命令验证HADR状态:
db2pd -d $DBNAME -hadr
并检查以下字段:
HADR状态值,两台服务器 字段 源服务器 目标服务器 HADR_ROLE PRIMARY
STANDBY
HADR_STATE PEER
PEER
连接状态 CONNECTED
CONNECTED
运行核心迁移
请按照以下步骤将 SAP 系统从源服务器迁移到目标服务器。
调整 SAP 系统的DNS记录,使其指向目标 SAP 服务器。 此调整可确保客户端系统(例如运行 SAP 登录图形用户界面的系统)连接到目标服务器。
-
停止包含 Db2 数据库的源服务器 SAP 系统。
在源系统上以
$SIDADM
身份登录并运行以下命令:stopsap
等待命令完成。
-
使用以下命令切换到目标服务器(
$DB2ADM
)并开始接管:db2 takeover hadr on database $DBNAME
如果源系统没有完全关闭,接管命令有一个选项
by force
可以帮上忙。 更多信息,请参阅 TAKEOVER HADR命令。 -
作为目标服务器上的
$DB2ADM
。 使用以下命令验证 IBM Db2 HADR角色是否已从standby
更改为primary
:db2pd -d th2 -hadr | grep ROLE
-
如果目标服务器上的 IBM Db2 HADR角色是
primary
,则可以在目标服务器上启动 SAP 系统。 切换到$SIDADM
用户并运行以下命令:startsap
IBM Db2 数据库同步仍在配置中,但现阶段尚未启用。
如果计划将目标系统迁移回来(例如在灾难情况下),则保持HADR配置不变。 如果在迁移后源系统被移除,请按照 如何移除现有 HADR 配置中的说明移除 HADR 配置。
迁移已完成。
- SAP 源服务器上的系统崩溃了
- SAP 目标服务器上的系统已启动并运行