用于产生用于自动数据库迁移的脚本集的解决方案制造技术

技术编号:21686065 阅读:30 留言:0更新日期:2019-07-24 14:39
本公开涉及用于产生用于自动数据库迁移的脚本集的解决方案。通过在迁移之前的对数据库对象的仔细准备和分析,可至少部分地完成数据库的迁移。如果源数据库及其对象首先被分析以确定数据的性质、关系、依赖性等,则可更加及时、高效而可靠地执行迁移。通过针对不同对象类型选择合适的操作,可减少拷贝和安装的时间的长度。

Solutions for generating script sets for automatic database migration

【技术实现步骤摘要】
用于产生用于自动数据库迁移的脚本集的解决方案本申请是申请日为2014年7月2日、名称为“用于产生用于自动数据库迁移的脚本集的解决方案”、申请号为201480035250.7的专利技术专利申请的分案申请。相关申请的交叉引用本申请涉及下面的共同未决并且共同受让的美国专利申请:由Higginson随本申请同时提交的标题为“METHODANDSYSTEMFORREDUCINGINSTABILITYWHENUPGRADINGSOFTWARE”的第13/937,977号美国专利申请(代理人案号88325-860490(135800US));由Davis随本申请同时提交的标题为“CONSOLIDATIONPLANNINGSERVICEFORSYSTEMSMIGRATION”的第13/938,061号美国专利申请(代理人案号88325-870368(137700US));由Davis随本申请同时提交的标题为“MIGRATIONSERVICESFORSYSTEMS”的第13/938,066号美国专利申请(代理人案号88325-870369(137800US));由Higginson随本申请同时提交的标题为“DATABASEMODELINGANDANALYSIS”的第13/937,885号美国专利申请(代理人案号88325-870374(137900US));由Higginson随本申请同时提交的标题为“AUTOMATEDDATABASEMIGRATIONARCHITECTURE”的第13/937,868号美国专利申请(代理人案号88325-870373(138000US));由Raghunathan等人随本申请同时提交的标题为“CLOUDSERVICESLOADTESTINGANDANALYSIS”的第13/937,344号美国专利申请(代理人案号88325-870381(138100US));由Raghunathan等人随本申请同时提交的标题为“CLOUDSERVICESPERFORMANCETUNINGANDBENCHMARKING”的第13/937,483号美国专利申请(代理人案号88325-870383(138200US));由Buehne等人随本申请同时提交的标题为“ONLINEDATABASEMIGRATION”的第13/937,545号美国专利申请(代理人案号88325-870410(138400US));由Buehne等人随本申请同时提交的标题为“DYNAMICMIGRATIONSCRIPTMANAGEMENT”的第13/937,486号美国专利申请(代理人案号88325-870409(138500US));和由Masterson等人随本申请同时提交的标题为“ADVANCEDCUSTOMERSUPPORTSERVICES–ADVANCEDSUPPORTCLOUDPORTAL”的第13/937,970号美国专利申请(代理人案号88325-870401(138600US))。以上列出的申请的全部公开的全部内容为了所有目的而通过引用包含在本申请中。
本公开涉及用于产生用于自动数据库迁移的脚本集的解决方案。
技术介绍
可能需要将数据库从一个服务器移动到另一服务器,或者将数据库从一个服务器移动到另一服务器可能有助于允许软件的安装或硬件资源的升级。然而,移动或迁移数据库系统会是令人畏惧的任务。许多数据库系统通常非常复杂,并且存储关键数据或执行关键任务服务。顾客容忍数据库系统离线或经历任何数据的损坏的能力可能是有限的。当数据库系统将要被从第一服务器系统迁移到第二服务器系统时,应该以及时、高效而可靠的方式执行该迁移。传统上,数据库迁移是非常人员密集的,需要一个人(或一个团队的人)识别并且使用他们的判断以想出用于执行迁移的策略方案。通常,这种人类判断会比较耗时、不一致、易发生错误,并且导致低效迁移方案的实现。
技术实现思路
在一些实施例中,一种用于准备服务器系统之间的迁移的方法,包括迁移服务,该迁移服务接收将要被从源服务器系统迁移到目标服务器系统的数据库对象的指示。基于将要被迁移的数据库对象的特性选择用于数据库对象的拷贝操作。可从拷贝规则列表中选择拷贝操作。基于将要被迁移的数据库对象的特性选择用于数据库对象的安装操作。可从安装规则列表中选择安装操作。可确定用于数据库对象的迁移的调度,该调度可基于数据库对象对于其它对象的依赖性。可产生定义用于迁移数据库对象的拷贝和安装操作的脚本。在实施例中,拷贝操作可被选择以减少用于执行拷贝操作的时间。同样地,拷贝操作可被选择以减少执行拷贝操作所需的资源。安装操作可被选择以减少用于执行安装操作的时间。安装操作可被选择以减少执行安装操作所需的资源。在实施例中,安装操作可包括在目标服务器上重新创建数据库对象所需的步骤。在实施例中,还可定义用于数据库对象的后处理操作,后处理操作可包括改变数据库对象的结构,后处理操作被包括在脚本中。附图说明可通过参照下面的附图来实现对各种实施例的性质和优点的进一步理解。在附图中,类似部件或特征可具有相同标号。另外,可通过在标号后面跟随有破折号和区分类似部件的第二标号来区分相同类型的各种部件。如果在本说明书中仅使用第一标号,则该描述适用于具有相同的第一标号的类似部件中的任何一个部件,而不管第二标号如何。图1表示被配置为管理和执行服务器系统之间的迁移的系统的实施例。图2表示支持平台系统的实施例。图3表示迁移服务的实施例。图4表示用于产生用于迁移的脚本的方法的实施例。图5表示用于确定用于数据库对象的拷贝和/或安装操作的方法的实施例。图6表示计算机系统的实施例。具体实施方式数据库“迁移”可被用于描述内容或数据库文件从一个位置移动或转移到另一位置。计划改变硬件平台、升级软件或想要合并系统和数据库的顾客可能通常执行数据库迁移。数据库迁移会涉及多个步骤。首先,数据库和关联的数据存储装置(统称为“数据库对象”)可被分析并且准备迁移。在准备对象之后,一些或全部对象可被从源服务器拷贝到目标系统。最后,在拷贝对象之后,可能需要安装步骤以便为了目标系统而对数据对象进行格式化或后处理。在数据库迁移中,可能希望优化在目标系统处拷贝和安装对象的步骤。在实施例中,在迁移的这些步骤期间,可能需要使数据库离线以在数据的源拷贝和目标拷贝之间保持数据完整性。对于许多顾客来说,减少在迁移期间使数据库离线的时间或使该时间最小化可能是关键的优先考虑事情。服务的中断可能意味着损失的收入或商业活动的中断。在实施例中,通过执行更仔细的对数据库对象的分析以及对拷贝和安装步骤的准备,迁移的拷贝和安装步骤可被优化(即,通过减少用于执行这些步骤的时间来优化)。优化还可表示在迁移期间减少迁移的时间,减少存储要求,减少手工分析等。通过在拷贝和安装的步骤之前的对数据库对象的仔细准备和分析,可至少部分地完成数据库迁移的拷贝和安装步骤的优化。在许多场景中,如果源数据库及其数据首先被分析以确定数据的性质、关系、依赖性等,则可更加及时、高效而可靠地执行迁移。通过在拷贝和安装之前的对数据库对象的仔细分析,可减少迁移的拷贝和安装步骤的时间的长度。例如,数据库可包括不同类型的对象,诸如表、索引、mview等。对于这些对象类型中的每个对象本文档来自技高网
...

【技术保护点】
1.一种促进系统之间的迁移的方法,所述方法包括:由迁移服务接收要从源系统迁移到目标系统的数据库对象集的指示,其中所述迁移服务包括:一个或多个存储器;以及一个或多个处理器,通信地耦接到所述一个或多个存储器;由所述迁移服务分析要迁移的所述数据库对象集的一个或多个依赖性,所述一个或多个依赖性包括所述数据库对象集中的数据库对象的一个或多个类型;至少部分地基于所述分析的结果,由所述迁移服务至少部分地通过以下操作来选择用于所述数据库对象集的一个或多个拷贝操作以及用于所述数据库对象集的一个或多个安装操作:至少部分地基于所述数据库对象的所述一个或多个类型选择所述一个或多个拷贝操作和/或所述一个或多个安装操作,其中:所述一个或多个拷贝操作选自多个拷贝规则,并且所述一个或多个安装操作选自多个安装规则;由所述迁移服务确定所述一个或多个拷贝操作和所述一个或多个安装操作的次序,其中:拷贝和安装所述数据库对象集中的特定数据库对象是根据所述次序而被指定的,并且所述次序至少部分地基于所述数据库对象集的所述一个或多个依赖性;以及生成至少一个脚本,所述至少一个脚本定义根据所述次序迁移所述数据库对象集的所述一个或多个拷贝操作和所述一个或多个安装操作。...

【技术特征摘要】
2013.07.09 US 13/937,9881.一种促进系统之间的迁移的方法,所述方法包括:由迁移服务接收要从源系统迁移到目标系统的数据库对象集的指示,其中所述迁移服务包括:一个或多个存储器;以及一个或多个处理器,通信地耦接到所述一个或多个存储器;由所述迁移服务分析要迁移的所述数据库对象集的一个或多个依赖性,所述一个或多个依赖性包括所述数据库对象集中的数据库对象的一个或多个类型;至少部分地基于所述分析的结果,由所述迁移服务至少部分地通过以下操作来选择用于所述数据库对象集的一个或多个拷贝操作以及用于所述数据库对象集的一个或多个安装操作:至少部分地基于所述数据库对象的所述一个或多个类型选择所述一个或多个拷贝操作和/或所述一个或多个安装操作,其中:所述一个或多个拷贝操作选自多个拷贝规则,并且所述一个或多个安装操作选自多个安装规则;由所述迁移服务确定所述一个或多个拷贝操作和所述一个或多个安装操作的次序,其中:拷贝和安装所述数据库对象集中的特定数据库对象是根据所述次序而被指定的,并且所述次序至少部分地基于所述数据库对象集的所述一个或多个依赖性;以及生成至少一个脚本,所述至少一个脚本定义根据所述次序迁移所述数据库对象集的所述一个或多个拷贝操作和所述一个或多个安装操作。2.如权利要求1所述的方法,其中所述次序指定仅在所述数据库对象集的第二子集已经被拷贝和安装之后才拷贝或安装所述数据库对象集的第一子集。3.如权利要求1所述的方法,其中所述次序指定与所述数据库对象集的第二子集并行地拷贝或安装所述数据库对象集的第一子集。4.如权利要求1所述的方法,还包括:至少部分地基于所确定的次序和所述数据库对象集的所述一个或多个依赖性,由所述迁移服务建立定义用于所述至少一个脚本的执行次序的调度;其中所述至少一个脚本对应于多个脚本,并且多个脚本的执行是根据所述执行次序被指定的。5.如权利要求4所述的方法,其中用于所述多个脚本的执行次序指定所述多个脚本中的至少两个脚本的并行执行。6.如权利要求1所述的方法,其中所述一个或多个拷贝操作被选择以减少:所述一个或多个拷贝操作的一个或多个拷贝执行时间;和/或执行所述一个或多个拷贝操作需要的资源。7.如权利要求6所述的方法,其中所述一个或多个安装操作包括在所述目标系统上重新创建所述数据库对象集,并且所述一个或多个安装操作被选择以减少:所述一个或多个安装操作的一个或多个安装执行时间;和/或执行所述一个或多个安装操作需要的资源。8.一种系统,包括:一个或多个处理器;以及存储器,与所述一个或多个处理器可通信地耦接,并且其上存储了指令,所述指令在由所述一个或多个处理器执行时使所述一个或多个处理器进行以下操作:接收要从源系统迁移到目标系统的数据库对象集的指示;分析要迁移的所述数据库对象集的一个或多个依赖性,所述一个或多个依赖性包括所述数据库对象集中的数据库对象的一个或多个类型;至少部分地基于所述分析的结果,至少部分地通过以下操作来选择用于所述数据库对象集的一个或多个拷贝操作以及用于所述数据库对象集的一个或多个安装操作:至少部分地基于所述数据库对象的所述一个或多个类型选择所述一个或多个拷贝操作和/或所述一个或多个安装操作,其中:所述一个或多个拷贝操作选自多个拷贝规则,并且所述一个或多个安装操作选自多个安装规则;确定所述一个或多个拷贝操作和所述一个或多个安装操作的次序,其中:拷贝和安装所述数据库对象集中的特定数据库对象是根据所述次序而被指定的,并且所述次序至少部分地基于所述数据库对象集的所述一个或多个依赖性;以及生成至少一个脚本,所...

【专利技术属性】
技术研发人员:S·比内E·施皮格尔贝尔格
申请(专利权)人:甲骨文国际公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1