步骤
无论是那种迁移类型,都有共同的执行步骤,以确保一个成功的迁移。这些步骤是:
• 规划
在规划阶段,源系统和目标系统都被分析,转移数据量,所花费的时间,进行迁移现有系统允许的停机,安全,系统的可用性和回滚的选择。可能还有其他因素,具体到当前的业务需求,如政府和行业法规。该规划需要有尽可能详细到执行命令。
将数据传输到新的系统所需的时间常常被忽视,但它往往是最耗时操作。,在FTP协议下,当数据库大小达到数百个千兆字节或更多是,使用最大数据传输速率超过100 MB /秒的网络这些时间不够的。在允许的时间内,转移大型的数据库,支持巨型帧传输的千兆网络或更快的网络是必需的。此外,如果数据被传输通过SSH协议,由于安全问题,那么它会更慢,因为加密开销。
另一个重要方面是源数据库和目标数据库的兼容性。这取决于操作系统平台,数据库供应商,以及版本。例如,在同一平台上, 把Oracle数据库从9.2版本迁移到10g,比从10g迁移到11g需要更少的步骤来完成。跨平台或数据库厂商更是有限的,这通常意味着把数据输出到文件,然后导入,或使用复制或网关技术。
• 目标筹备
目标系统安装和配置将成数据库迁移完成后的首要任务。所有必要的补丁必须安装。这样做是根据硬件和软件的规范和任何特定的业务需求,如安全,备份,以及其他的要求。应用程序将不得不指向新系统,并且必须同网络和系统管理员进行协调。
• 测试
这一步涉及到数据迁移计划的测试。通常情况下,测试在不属于生产环境这样一套系统上进行,以防止任何业务中断。举例来说,这些系统可能是在源系统上开发的但却要运行在不同的目标系统上。在这一步这两个系统监测完成迁移时间和资源利用率。这目标系统用来证实测试成功的完成,以确保数据的完整性,可获取性,以及系统的性能。
最理想的是,数据量应该是非常接近生产环境,如果不备份环境。这对适当的数据库性能优化和调整是必要,因为不同的数据库版本可能会在这方面有不同的行为。因为数据传输速率和存取时间在不同系统之间会有所不同,数据统计必须在各级目标系统进行收集,确保适当资源利用率。
任何必要的修改都必须反映在该计划中。由于高系统复杂性,测试可能要反复进行。
• 移植
一旦测试已顺利完成,生产数据迁移按照计划执行。如果生产数据可以在允许的停机时间内被迁移,那么整个过程将是非常容易管理,否则,其他步骤都必须执行,以确保迁移圆满完成。
回滚选择是必备的,万一新系统因故发生故障,并且也没有留下更多的时间来纠正这个问题。
一定要收集如前所述的数据统计,并设置必要的用户和对象层次特权。这两项是最常见的目标系统问题。
• 验证
类似的测试迁移,数据核查,必须在目标系统完成。它确保数据的完整性和优化系统的性能。在旧的系统退役之前,这两种系统可能会在并行运行。在这种情况下,数据流必须安装两个系统之间,使它们完全相同。通常是这样做,的目目的系统配置为主机,旧的系统被配置为副机,所以数据流从新的流向旧的系统。这种情况下,复制是一种理想的工具。为防止双向数据流必须有冲突检测和解决的机制。
是否要执行额外的任务,取决于迁移的类型。当移动到不同的数据库平台或者数据整理删除过时或多余的信息时,这些任务可能会被创造新的数据库结构。数据整理和一致性被在兼容性和时间限制之中的受访问者称为是最有挑战性的问题。