数据库升级兼容的方法、装置、设备及存储介质与流程

文档序号:17950322发布日期:2019-06-18 23:58阅读:221来源:国知局
数据库升级兼容的方法、装置、设备及存储介质与流程
本申请涉及数据通信
技术领域
,尤其涉及一种数据库升级兼容的方法、装置、设备及存储介质。
背景技术
:随着信息技术的飞速发展,充分有效的管理和利用各类数据信息愈来愈重要,因此数据库得到了广泛的应用。数据库是按照数据结构来组织、存储和管理数据的仓库,存储着设备当前配置等关键信息,它的正确与否直接影响着设备是否正常运行。由于在开发新的功能或者进行问题修复时,需要对数据库进行频繁更新,当数据库的字段或配置项结构未改变,但存储内容的格式发生变化时,将会造成数据库升级配置不兼容的情况。相关技术中,数据库的升级兼容工作主要包括:在版本升级前记录不兼容的配置信息,并清除不兼容的配置信息,在版本升级后再由管理员通过手动方式对不兼容的配置信息重新进行配置。在上述技术方案中,如果不兼容的配置信息量大,则实现兼容的耗时较长,导致设备长时间处于不可用状态,并且由于需要管理员手动配置,因此在耗费人力的同时,也会造成数据库升级效率低、易出错等问题。技术实现要素:本申请实施例提供一种数据库升级兼容的方法、装置、设备及存储介质,以解决现有技术依赖手动升级配置造成数据库升级耗时长、效率低、易出错等问题。具体地,本申请是通过如下技术方案实现的:第一方面,提供一种数据库升级兼容的方法,所述方法用于在将数据库从原版本升级到新版本时进行配置信息兼容处理,所述方法包括:从预设的配置不兼容信息表中获取原版本数据库中不兼容且未处理的记录项,所述记录项包括记录项字段以及所述记录项字段对应的字段内容;对于获取到的任一记录项,执行如下操作:设置原版本数据库中不兼容且未处理的记录项和预设的配置不兼容信息表中不兼容且未处理的记录项中的处理状态字段的内容对应一致;根据所述不兼容信息表中不兼容且未处理的记录项中的字段内容,更新所述原版本数据库中不兼容且未处理的对应记录项;在更新成功后,将所述更新的原版本数据库中不兼容且未处理的对应记录项提交到新版本数据库和配置不兼容信息表中。第二方面,提供一种数据库升级兼容的装置,所述装置用于在将数据库从原版本升级到新版本时进行配置信息兼容处理,所述装置包括:获取单元,用于从预设的配置不兼容信息表中获取原版本数据库中不兼容且未处理的记录项,所述记录项包括记录项字段以及所述记录项字段对应的字段内容;设置单元,用于对于获取到的任一记录项,设置原版本数据库中不兼容且未处理的记录项和预设的配置不兼容信息表中不兼容且未处理的记录项中的处理状态字段的内容对应一致;更新单元,用于根据配置不兼容信息表中不兼容且未处理的记录项中的字段内容,更新所述原版本数据库中不兼容且未处理的对应记录项;提交单元,用于在更新成功后,将所述更新的原版本数据库中不兼容且未处理的对应记录项提交到新版本数据库和配置不兼容信息表中。第三方面,提供一种数据库升级兼容设备,包括:内部总线、以及通过内部总线连接的存储器、处理器和外部接口。其中,所述处理器,用于读取所述存储器上的机器可读指令,并执行所述指令实现如下操作:从预设的配置不兼容信息表中获取原版本数据库中不兼容且未处理的记录项,所述记录项包括记录项字段以及所述记录项字段对应的字段内容;对于获取到的任一记录项,执行如下操作:设置原版本数据库中不兼容且未处理的记录项和预设的配置不兼容信息表中不兼容且未处理的记录项中的处理状态字段的内容对应一致;根据配置不兼容信息表中不兼容且未处理的记录项中的字段内容,更新所述原版本数据库中不兼容且未处理的对应记录项;在更新成功后,将所述更新的原版本数据库中不兼容且未处理的对应记录项提交到新版本数据库和配置不兼容信息表中。第四方面,提供一种计算机可读存储介质,包括:所述计算机可读存储介质上有若干计算机指令,所述计算机指令被执行时进行如下处理:从预设的配置不兼容信息表中获取原版本数据库中不兼容且未处理的记录项,所述记录项包括记录项字段以及所述记录项字段对应的字段内容;对于获取到的任一记录项,执行如下操作:设置原版本数据库中不兼容且未处理的记录项和预设的配置不兼容信息表中不兼容且未处理的记录项中的处理状态字段的内容对应一致;根据配置不兼容信息表中不兼容且未处理的记录项中的字段内容,更新所述原版本数据库中不兼容且未处理的对应记录项;在更新成功后,将所述更新的原版本数据库中不兼容且未处理的对应记录项提交到新版本数据库和配置不兼容信息表中。由以上技术方案可知,本申请实施例中,在将数据库从原版本升级到新版本时,通过升级程序中自带的兼容升级程序对记录的原版本数据库中配置不兼容的信息进行升级配置兼容处理,避免了手动升级配置,从而减少了升级过程中耗时长的问题。在对配置不兼容信息执行兼容升级程序的过程中,根据配置不兼容信息表中不兼容且未处理的记录项中的字段内容,更新原版本数据库中不兼容且未处理的对应记录项,在更新成功后,将更新的内容提交到新版本数据库和配置不兼容信息表中,通过该兼容升级程序保障了升级配置过程的准确性和高效性。附图说明图1是本申请数据库升级兼容的方法的一个实施例流程图;图2是本申请数据库升级兼容的方法的另一个实施例流程图;图3是本申请数据库升级兼容的装置的实施例示意图;图4是本申请数据库升级兼容设备的实施例示意图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。为了使本申请的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本申请进行详细说明。参见图1,为本申请一种数据库升级兼容的方法的一个实施例流程图,该实施例可以包括如下步骤:步骤101,从预设的配置不兼容信息表中获取原版本数据库中不兼容且未处理的记录项,所述记录项包括记录项字段以及所述记录项字段对应的字段内容,对于获取到的任一记录项,执行操作步骤102至步骤104。在一种可选的实现方式中,在对原版本数据库进行升级前,可以新建一个存储配置不兼容信息的数据库,在新建的数据库中创建配置不兼容信息表,所述配置不兼容信息表可以用于存储原版本不兼容且未处理的信息,所述不兼容且未处理的信息可以向升级前原版本数据库各业务模块的负责人收集得到。在对不兼容配置信息进行兼容处理时,从预设的配置不兼容信息表中可以获取不兼容且未处理的记录项,对于获取到的每一条不兼容且未处理的记录项,依次执行步骤102至步骤104的操作。步骤102,设置原版本数据库中不兼容且未处理的记录项和预设的配置不兼容信息表中不兼容且未处理的记录项中的处理状态字段的内容对应一致。在一种可选的实现方式中,可以利用数据库事务使原版本数据库中不兼容且未处理的每条配置信息的处理状态和配置不兼容信息表中不兼容且未处理的记录项中的处理状态字段的内容对应一致,主要目的是为了防止在升级过程中因掉电或者其他意外情况而终止数据库升级,造成不兼容信息在翻译成兼容信息的过程中出现翻译不完整的情况。因此,可以利用数据库事务来保证升级前原版本数据库中不兼容且未处理的记录项和配置不兼容信息表中不兼容且未处理的记录项中的处理状态字段的内容相一致。步骤103,根据配置不兼容信息表中不兼容且未处理的记录项中的字段内容,更新所述原版本数据库中不兼容且未处理的对应记录项。在一种可选的实现方式中,可以利用配置不兼容信息表中记录的处理函数,将不兼容信息对应的联合字段中相应字段名里存储的不兼容信息翻译成为兼容的信息,将所述兼容信息存储到原版本数据库的缓存区,以更新升级前原版本数据库中对应的记录项,实现对原版本数据库中不兼容信息内容的更新。步骤104,在更新成功后,将所述更新的原版本数据库中不兼容且未处理的对应记录项提交到新版本数据库和配置不兼容信息表中。在一种可选的实现方式中,当不兼容且未处理记录项中联合字段所对应的字段内容和处理状态字段的内容全部更新成功时,可以将更新的原版本数据库中不兼容且未处理的记录信息提交到新版本的数据库和配置不兼容信息表中;如果不兼容且未处理记录项中联合字段所对应的字段内容和处理状态字段的内容至少有一项更新失败,则将更新的内容全部撤销,且所更新的内容不用提交到新版本的数据库和配置不兼容信息表中。由上述实施例可见,在将数据库从原版本升级到新版本时,通过升级程序中自带的兼容升级程序对记录的原版本数据库中配置不兼容的信息进行升级兼容处理,避免了手动升级配置,从而减少了升级过程中耗时长的问题。在对配置不兼容信息执行兼容升级程序的过程中,通过该兼容升级程序保障了升级配置过程的准确性和高效性。参见图2,为本申请一种数据库升级兼容的方法的另一个实施例流程图,该实施例对数据库升级兼容的方法进行了详细描述,该实施例可以包括如下步骤:步骤201,新建一个数据库,在该数据库中创建一个配置不兼容信息表。在一种可选的实现方式中,在对数据库进行升级前,可以新建一个存储配置不兼容信息的数据库,然后在新建的数据库中创建一个用于存储原版本数据库中不兼容信息的配置不兼容信息表,所述配置不兼容信息表中可以存储的字段包括:id值、配置名、表名、字段名、处理函数、版本号、处理状态等字段。下面对这些字段的含义进行示例性说明:所述id值,可以用于表征配置不兼容信息属于数据库或者配置文件,本申请中可以将id的默认值设置为1,并且可以取id值为1时代表数据库,取id值为0时代表配置文件。所述配置名、表名、字段名,各字段存储在配置不兼容信息的数据库和配置文件中,将配置名、表名、字段名组成联合字段(也可称为联合主键),以便于在向配置不兼容信息表中写入信息时,避免出现配置名、表名、字段名重复的情况,导致同一个数据库相同表的相同字段或同一配置文件的同一配置多次执行升级兼容。所述处理函数,表示将旧字段翻译为新字段相应函数的共享库路径和函数名。所述版本号,表示对不兼容信息修改合入的版本号,如版本号以1、2、3等自然数,如果合入配置不兼容版本号为2,则该字段对应值为2。所述处理状态,表示配置不兼容信息中的字段内容是否翻译完,所述处理状态字段的取值可以为“未处理”、“已处理”两种情况。通常情况下,可以将处理状态字段的默认值设置为“未处理”。在将不兼容信息翻译为兼容信息的过程中,可能会被意外中断(比如,设备掉电、手动掐断等),出现部分字段内容已处理完、部分字段内容尚未处理的情况。在现有技术中仅靠一个兼容或不兼容文件标识来表示所有字段内容已处理完或完全未处理是不准确的,故本申请中对每个配置不兼容信息的记录项增加一个处理状态字段,以提高配置升级兼容的准确性。步骤202,向原版本数据库各业务模块收集不兼容且未处理的信息,记录在所述配置不兼容信息表中。在对原版本数据库执行配置升级兼容程序前,可以向原版本数据库各业务模块收集配置不兼容信息,并将收集到的配置不兼容信息保存在配置不兼容信息表中,以供后续获取不兼容信息且未处理的记录项。在配置升级模块中增加一个配置升级兼容程序,在现有的配置升级完成后、各业务模块配置恢复前,执行以下配置升级兼容程序。步骤203,判断配置不兼容信息表中是否存在不兼容且未处理的记录项,若是,则执行步骤204,若否,则执行步骤218。在一种可选的实现方式中,如果原版本数据库未执行过该配置升级兼容程序,则可以通过查询配置不兼容信息表中是否存在与原版本数据库相应的配置不兼容且未处理的记录,来确定原版本数据库中是否存在配置不兼容且未处理的记录项。其查询条件可以是查询不兼容信息表中记录的处理状态字段的取值和版本号,若所述记录的查询结果为未处理,且版本号字段值在旧版本号和新版本号之间,则可以认为原版本数据库存在不兼容且未处理的记录,否则,则可以认为原版本数据库不存在不兼容且未处理的记录。所述的旧版本号可以从上一次启动的原版本数据库的版本信息中获取该旧版本号;所述的新版本号可以是执行升级兼容程序后,在启动新版本数据库版本信息中获取的版本号。为了提高配置升级兼容的效率,可以将查询到的配置不兼容且未处理记录项的结果分别按照id值、配置名排序。其中,按照id值排序可以将配置文件和数据库分类进行配置升级兼容处理,按照配置名排序可以避免同名数据库重复附加和分离,减少对数据库不必要的升级兼容程序的操作,以提高数据库升级兼容配置的效率。如果查询的最终结果中配置不兼容信息表中不兼容且未处理的记录项的数目为0,则可以表示原版本数据库和配置不兼容信息表中不存在不兼容且未处理的记录,即原版本数据库中不存在配置不兼容的信息;否则,可以表示原版本数据库中存在不兼容且未处理的记录,即原版本数据库存在配置不兼容信息,需要执行配置升级兼容程序。若存在不兼容且未处理的记录项,则执行步骤204,若不存在不兼容且未处理的记录项,则执行步骤218。步骤204,从配置不兼容信息表中获取任一不兼容且未处理的记录项。步骤205,根据配置不兼容信息的id值,判断是否需要附加数据库,若是,则执行步骤206,若否,则执行步骤207。在一种可选的实现方式中,对于判断是否需要附加数据库,可以先判断配置不兼容信息表中不兼容且未处理的记录项中的id值,所述id值可以表征配置不兼容信息属于数据库或者配置文件。其中,可以设置id值为0表示因为配置文件中存储内容的格式导致的不兼容,那么不需要执行附加原版本数据库操作;设置id值为1表示因为数据库存储字段内容的格式导致的不兼容。如果id值为1,可以再判断新建的数据库(也就是新建的存储配置不兼容信息表的数据库)是否已附加过原版本数据库,如果附加过,则不需要重复附加;如果没有附加过,则需要将原版本数据库附加到新建的数据库上。步骤206,附加原版本数据库。将原版本数据库附加到新建的数据库上,其主要目的是为了避免研发人员在对合入配置不兼容信息代码进行封装处理函数时,可能因为代码书写不规范,导致执行配置升级兼容程序时所涉及到的原版本数据库和配置不兼容信息表中记录的配置不兼容信息不能够同步更新。因此,在配置升级兼容程序执行的过程中,可以将不兼容且未处理的记录项所对应的原版本数据库附加到新建的数据库上。步骤207,设置原版本数据库中不兼容且未处理的记录项和预设的配置不兼容信息表中不兼容且未处理的记录项中的处理状态字段的内容对应一致。在一种可选的实现方式中,为防止升级过程中设备掉电导致原版本数据库中不兼容配置信息部分翻译,部分未翻译的情况,可以利用数据库事务来保证该原版本数据库中不兼容且未处理的记录中需要处理的每一条配置不兼容信息记录项和配置不兼容信息表中相应记录项的处理状态字段保持一致,也就是利用数据库事务来保证原版本数据库中需要处理的每一条配置不兼容信息中的所有内容的处理状态和记录在配置不兼容信息表中相应的记录项的处理状态字段内容完全一致。步骤208,利用记录项中的处理函数将所述联合字段所对应的不兼容的字段内容翻译为兼容的字段内容。利用处理函数将配置不兼容信息表中所述联合字段所对应的不兼容信息翻译为兼容信息,也就是通过处理函数将指定配置名中相应表里的字段所对应的不兼容信息翻译为兼容信息,然后再将兼容信息写入相应字段中。步骤209,将翻译后兼容的字段内容,存储在原版本数据库的缓存区,以更新所述原版本数据库中不兼容且未处理的联合字段所对应的字段内容。将原版本数据库配置不兼容信息经过处理函数翻译成兼容信息后,可以将翻译后兼容的字段内容存储在原版本数据库的缓存区,以更新所述原版本数据库中不兼容且未处理的联合字段所对应的字段内容,完成对原版本数据库不兼容信息的相应字段内容的升级配置。步骤210,判断所述联合字段所对应的字段内容是否更新成功,若是,则执行步骤211,若否,则执行步骤214。步骤211,更新配置不兼容信息表中处理状态字段的内容为已处理。步骤212,判断所述处理状态字段的内容是否更新成功,若是,则执行步骤213,若否,则执行步骤214。步骤213,将更新的原版本数据库中不兼容且未处理的对应记录项提交到新版本数据库和配置不兼容信息表中,然后执行步骤215。如果不兼容信息中联合字段所对应的字段内容和不兼容信息记录的处理状态字段的内容全部更新成功,那么可以采用提交数据库事务来实现将更新的原版本数据库中不兼容且未处理的对应记录项提交到新版本数据库和配置不兼容信息表中。步骤214,撤销对原版本数据库和配置不兼容信息表中不兼容且未处理的记录项的修改。如果对于配置不兼容信息,在更新不兼容信息的联合字段所对应的字段内容和配置不兼容信息表中处理状态字段时,如果其中有一项更新失败,那么可以对于升级兼容过程中对原版本数据库和配置不兼容信息表中更新的内容全部撤销。步骤215,判断是否需要分离数据库,若是,则执行步骤216,若否,则执行步骤217。根据所述配置不兼容信息表中的记录项,判断是否需要分离数据库。在一种可选地实现方式中,对于判断是否需要分离数据库,可以先判断配置不兼容信息表中不兼容且未处理的记录中的id值,如果id为0,则可以不执行分离数据库操作;如果id值为1,则可以先判断当前兼容配置修改合入后的新版本数据库中是否存在不兼容且未处理的记录,如果存在,并且存在与兼容配置修改合入后的新版本数据库同名的记录,则不执行分离该数据库的操作,其目的是为了避免数据库的重复附加和分离;如果不存在,那么执行分离数据库操作。步骤216,分离数据库。将升级前原版本数据库附加到新建的数据库上,根据不兼容且未处理的记录信息,完成将数据库从原版本升级到新版本。如果原版本数据库中所有的不兼容信息全部完成升级兼容的操作,则可以将所附加的升级兼容修改合入后的新版本数据库从新建的数据库上分离。步骤217,判断配置不兼容信息表中是否存在不兼容且未处理的记录项,若是,则返回步骤204,若否,则执行步骤218。步骤218,记录兼容后新版本数据库的版本号,结束流程。在一种可选的实现方式中,本申请在对原版本数据库执行配置兼容升级程序前,可以先判断所述原版本数据库或配置文件是否已经成功执行过该配置升级兼容程序。如果已经执行过该配置升级兼容程序,则可以表示当前原版本数据库或配置文件中不存在配置不兼容的信息,如果未执行过该配置升级兼容程序,则可以表示当前原版本数据库或配置文件中存在配置不兼容的信息,需要对其不兼容信息进行配置升级兼容处理。同时,在升级兼容处理后创建一个兼容标记文件,可以用于表示该数据库或配置文件已成功执行过升级兼容程序,不存在配置不兼容的信息。下面通过一个应用实例详细说明本申请实施例的数据库升级兼容过程。假设新增一个存储配置不兼容信息的数据库,数据库名称为cfg_compatibleness.db,在cfg_compatibleness.db数据库中创建一个存储配置不兼容信息表,表名为tb_compatibleness_info。假设配置不兼容信息表中记录了所要升级的原版本数据库interface.db中的不兼容信息,所记录的不兼容信息的记录项如表1所示。表1配置不兼容信息表tb_compatibleness_info假设原版本数据库,配置名为interface.db,表名为tb_port_l2所存储的不兼容信息的记录如表2所示。假设表2中字段ifindex、ifindex1的存储内容第一位代表a功能的启用状态,第二位代表b功能的启用状态,用1代表启用,0代表禁用,则原版本数据库所存储的不兼容信息的记录项中ifindex字段的含义为禁用a,启用b。如果原版本数据库所存储的不兼容信息是由于存储内容a功能和存储内容b功能启用状态的对应位调换了,造成的原版本数据库不兼容,那么对原版本数据库按照现有技术对数据库进行升级完成后,在各业务模块恢复前需要执行本申请中的升级兼容程序。表2表tb_port_l2ifindexifindex101010101首先,在表1中读取第一条不兼容信息的记录项,由于id值为1,因此需要附加原版本数据库,将原版本数据库interface.db附加到存储配置不兼容信息的新建数据库cfg_compatibleness.db上,通过数据库事务保证原版本数据库interface.db里的不兼容字段ifindex所对应内容的处理状态和创建的存储不兼容信息表tb_compatibleness_info中记录的处理状态字段的内容均为未处理。然后,利用处理函数/usr/lib/libifm.so,port_l2_ifindex_compatibleness_process对原版本数据库interface.db中,表名为tb_port_l2的不兼容字段名为ifindex的字段内容进行翻译,将其不兼容的字段内容01翻译为兼容的字段内容10。将翻译后的内容存储在原版本数据库interface.db的缓存区,以更新原版本数据库中不兼容且未处理的联合字段所对应的字段内容01。如果不兼容字段名为ifindex所对应的字段内容全部更新成功,则将配置不兼容信息表tb_compatibleness_info中记录的处理状态字段的内容更新为已处理,并将更新的原版本数据库中不兼容且未处理的记录项提交到新版本数据库和配置不兼容信息表中,即将版本号为1的数据库中不兼容信息翻译成的兼容信息提交到新版本数据库中,以及将配置不兼容信息表中字段名为ifindex所对应的处理状态修改为已处理。如果不兼容字段名为ifindex所对应的字段内容或配置不兼容信息表tb_compatibleness_info中记录的处理状态字段有一项更新失败,则撤销对原版本数据库和配置不兼容信息表中记录项的所有修改。因id值为1表示配置不兼容信息属于数据库,且在不兼容信息表中所记录的第二项与第一项同属于同一数据库interface.db,则可以对第二项记录项进行升级兼容程序的操作,直至配置不兼容信息表中记录的同一数据库中的两条不兼容记录项均执行升级兼容完成后,将所附加的数据库分离。由于在配置不兼容信息表tb_compatibleness_info中不存在其他配置不兼容信息的记录项,因此记录升级后的新版本数据库的版本号,完成数据库的升级兼容,结束流程。由上述实施例可知,在将数据库从原版本升级到新版本时,通过升级程序中自带的兼容升级程序对记录的原版本数据库中配置不兼容的信息进行升级配置兼容处理,避免了手动升级配置,从而减少了升级过程中耗时长的问题。在对配置不兼容信息执行兼容升级程序的过程中,通过该兼容升级程序保障了升级配置过程的准确性和高效性。与前述数据库升级兼容的方法的实施例相对应,本申请还提供了数据库升级兼容的装置、数据库升级兼容设备和计算机存储介质的实施例。请参照图3,为本申请数据库升级兼容的装置的一个实施例框图,所述装置包括:获取单元301,设置单元302,更新单元303,提交单元304。其中,获取单元301,用于从预设的配置不兼容信息表中获取原版本数据库中不兼容且未处理的记录项,所述记录项包括记录项字段以及所述记录项字段对应的字段内容;设置单元302,用于对于获取到的任一记录项,设置原版本数据库中不兼容且未处理的记录项和预设的配置不兼容信息表中不兼容且未处理的记录项中的处理状态字段的内容对应一致;更新单元303,用于根据配置不兼容信息表中不兼容且未处理的记录项中的字段内容,更新所述原版本数据库中不兼容且未处理的对应记录项;提交单元304,用于在更新成功后,将所述更新的原版本数据库中不兼容且未处理的对应记录项提交到新版本数据库和配置不兼容信息表中。其中,所述预设的配置不兼容信息表存储在预设的数据库中,所述配置不兼容信息表中记录了原版本数据库中配置不兼容信息的id值、联合字段、处理函数以及处理状态,所述联合字段包括配置名、表名、字段名,其中不同的id值用于表征所述配置不兼容信息属于数据库或者配置文件。在另一个可选的例子中,所述装置还可以包括:第一判断单元,用于根据配置不兼容信息的id值,判断是否需要附加数据库;第一执行单元,用于若id值表征配置不兼容信息属于数据库,则附加原版本数据库,若id值表征配置不兼容信息属于配置文件,则不附加原版本数据库。在一个可选的例子中,所述装置中的更新单元303可以包括:翻译单元,用于利用所述记录项中的处理函数将所述联合字段所对应的不兼容的字段内容翻译为兼容的字段内容;存储单元,用于将翻译后兼容的字段内容,存储在原版本数据库的缓存区,以更新所述原版本数据库中不兼容且未处理的联合字段所对应的字段内容。在另一个可选的例子中,在提交单元之前,所述装置还可以包括:第二判断单元,用于判断所述联合字段所对应的字段内容是否更新成功;第二执行单元,用于若更新成功,则更新配置不兼容信息表中处理状态字段的内容为已处理;第三判断单元,用于判断所述处理状态字段的内容是否更新成功;第三执行单元,用于若更新成功,则触发执行提交单元。在另一个可选的例子中,所述装置还可以包括:撤销单元,用于若配置不兼容信息的联合字段所对应的字段内容和处理状态字段的内容有一项更新失败,则撤销对原版本数据库和配置不兼容信息表中不兼容且未处理的记录项的修改。在另一个可选的例子中,在提交单元之后,所述装置还可以包括:第四判断单元,用于根据所述配置不兼容信息表中的记录项,判断是否需要分离数据库;第四执行单元,用于若id值表征配置不兼容信息属于数据库且记录项中不存在与所述附加数据库同名的记录,则分离数据库,若id值表征配置不兼容信息属于配置文件或所述记录项中存在与所述附加数据库同名的记录,则不分离数据库;第五判断单元,用于判断配置不兼容信息表中是否存在配置不兼容且未处理的记录项;第五执行单元,用于若存在配置不兼容且未处理的记录项,则在配置不兼容信息表中获取任一未处理的记录项。请参照图4,为本申请数据库升级兼容设备的一个硬件结构图,所述数据库升级兼容设备包括:内部总线401,以及通过内部总线连接的存储器402,处理器403和外部接口404。其中,所述处理器403,用于读取所述存储器上的所述机器可读指令,并执行所述指令以实现如下操作:从预设的配置不兼容信息表中获取原版本数据库中不兼容且未处理的记录项,所述记录项包括记录项字段以及所述记录项字段对应的字段内容;对于获取到的任一记录项,执行如下操作:设置原版本数据库中不兼容且未处理的记录项和预设的配置不兼容信息表中不兼容且未处理的记录项中的处理状态字段的内容对应一致;根据配置不兼容信息表中不兼容且未处理的记录项中的字段内容,更新所述原版本数据库中不兼容且未处理的对应记录项;在更新成功后,将所述更新的原版本数据库中不兼容且未处理的对应记录项提交到新版本数据库和配置不兼容信息表中。此外,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有若干计算机指令,所述计算机指令被执行时进行如下处理:从预设的配置不兼容信息表中获取原版本数据库中不兼容且未处理的记录项,所述记录项包括记录项字段以及所述记录项字段对应的字段内容;对于获取到的任一记录项,执行如下操作:设置原版本数据库中不兼容且未处理的记录项和预设的配置不兼容信息表中不兼容且未处理的记录项中的处理状态字段的内容对应一致;根据配置不兼容信息表中不兼容且未处理的记录项中的字段内容,更新所述原版本数据库中不兼容且未处理的对应记录项;在更新成功后,将所述更新的原版本数据库中不兼容且未处理的对应记录项提交到新版本数据库和配置不兼容信息表中。上述装置、数据库升级兼容设备、计算机可读存储介质中各个模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例、数据库升级兼容设备实施例、计算机可读存储介质实施例仅仅是示意性的,本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本
技术领域
中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1