
# 数据库迁移
此场景下数据库的迁移有如下方法：
- 数据库迁移同样可以使用主机迁移服务SMS，但是只能离线迁移。详情请参见[方法一：使用SMS]部分。
- 如果对停机时间有较高要求，您也可以使用数据库的备份恢复功能或者数据库同步复制技术进行迁移。 本文[方法二：使用备份恢复进行迁移]和[方法三：使用数据库同步复制技术进行迁移]部分将以HANA为例，说明如何使用数据库的自身能力降低迁移的RTO。
  
 #### 方法一：使用SMS
要保证目标系统与源端数据保持一致，需要在进行最后一次增量同步前将源端业务暂停，其余步骤与[方法一：主机迁移服务SMS](https://support.huaweicloud.com/bestpractice-sap/sap_08_0138.html#sap_08_0138__zh-cn_topic_0193939789_section21534687171737)中描述一致。
 #### 方法二：使用备份恢复进行迁移
在迁移方案里，备份还原方案是指的保存源系统的数据，并在目的系统进行还原。
这里以HANA数据库为例，说明如何使用HANA的备份恢复功能进行数据库迁移上云。
1. 参考[应用服务器迁移](https://support.huaweicloud.com/bestpractice-sap/sap_08_0138.html#sap_08_0138)部分将源端数据库迁移到华为云。
2. 停止源系统数据库业务，在源系统进行HANA数据库全备份（确保必要的日志也保留）。将备份文件传输到华为云的目的服务器上。 
   您也可以通过华为云对象存储服务OBS作为中转进行传输，华为云OBS提供多种工具加速文件上传，具体请参考[OBS工具汇总](https://support.huaweicloud.com/tg-obs/obs_09_0001.html)。
   
   
3. 登录目的端服务器，使用HANA Studio或者hdbsql等方式将备份恢复到数据库。具体参考[SAP HANA Administration Guide](https://help.sap.com/viewer/6b94445c94ae495c83a19646e7c3fd56/2.0.02/en-US/c4663eabbb571014923a90c70cec566c.html)。
   
   ![](https://support.huaweicloud.com/bestpractice-sap/public_sys-resources/note_3.0-zh-cn.png)
   - 如果全备份文件非常大，数据传输与数据恢复时间将会较长。为了降低停机时间，您可以先不停止源系统业务，先提前在目的系统先使用全备份进行恢复，停止业务后，再使用差异备份或者增量备份进行最终的转换。
   
   - 您也以选择将源端服务器通过SMS迁移到华为云，这样就无需再重新部署系统，同时也能保留一部分备份数据，正式业务转换时使用增量备份或差异备份即可。
    
   
   
4. 启动云上HANA数据库，确认系统可用，数据完整。
5. 使用应用连接数据库，进行系统测试验证。
 
 #### 方法三：使用数据库同步复制技术进行迁移
数据库一般提供了一些自己的原生工具支持数据的同步复制，包括HANA系统复制（[HANA System Replication](https://help.sap.com/viewer/6b94445c94ae495c83a19646e7c3fd56/2.0.03/en-US/676844172c2442f0bf6c8b080db05ae7.html)），[Oracle Data Guard](https://www.oracle.com/database/technologies/high-availability/dataguard.html)，[SQL Server AlwaysOn](https://docs.microsoft.com/en-us/sql/database-engine/availability-groups/windows/overview-of-always-on-availability-groups-sql-server?view=sql-server-2017)和DB2的[Q复制（Q Replication）](https://www.ibm.com/support/knowledgecenter/en/SSTRGZ_11.4.0/com.ibm.swg.im.iis.db.repl.intro.doc/topics/iiyrqinfroadmap.html)等。
本章节以SAP HANA为例，说明如何通过HANA的系统复制（HSR）功能将数据迁移到华为云。
1. 请参考[应用服务器迁移](https://support.huaweicloud.com/bestpractice-sap/sap_08_0138.html#sap_08_0138)部分将源端数据库迁移到华为云，也可以选择在华为云部署SAP HANA服务器。
2. 配置从源系统HANA到目的系统HANA数据库的异步系统复制（使用async模式），具体配置请参考[SAP HANA Administration Guide](https://help.sap.com/viewer/6b94445c94ae495c83a19646e7c3fd56/2.0.03/en-US/099caa1959ce4b3fa1144562fa09e163.html)。
3. 系统切换时，先检查HANA SR确保数据复制状态正常，再停止源SAP应用系统。
4. 在目的端数据库执行SAP HANA takeover，具体请参考[SAP HANA Administration Guide](https://help.sap.com/viewer/6b94445c94ae495c83a19646e7c3fd56/2.0.03/en-US/123f2c8579fd452da2e7debf7cc2bd93.html) ，检查数据库运行状态。
5. 在云端启SAP目标应用系统，确认应用系统与HANA数据的的连接正常。
6. 从业务端检查系统的可用性，及业务数据的完整性。
 
