exBase

一键式异构数据库迁移系统。集数据库迁移评估、应用迁移评估、自动采集、数据库结构迁移、数据迁移及数据校验等功能于一体。

Menu

应用兼容性评估

应用兼容性评估支持通过连接数据库扫描数据库中的动态视图或扫描数据库中的日志文件获取SQL样本,对应用SQL进行分析,也支持通过扫描MyBatis的Mapper文件,对应用文件中的SQL语句进行兼容性分析。通过不同方式获取SQL样本后,exBase会根据源数据库和目标数据库版本读取内置的兼容性列表,结合作业配置中指定使用的迁移规则模版中包含的所有迁移规则,对SQL语句进行匹配,以判断其兼容性。不兼容的关键字会直接记录,用户可以直观查看SQL语句不支持的关键字信息。

应用SQL兼容性判断结果有3种:

  • 兼容:目标数据库直接支持该SQL语句,无需转化,可直接在目标数据库中执行,并获得与在源数据库中执行相同的效果。

  • 可转换:目标数据库不支持该SQL语句中的某些语法,但迁移规则中指定了转换方式,开发人员可针对其中不支持的部分进行简单的语法转换或关键字替换,即可在目标数据库中执行,并获得转换前的SQL语句在源数据库中执行相同的效果。

  • 不兼容:目标数据库不支持该SQL语句,并且迁移规则中没有指定当前状态下可行的转换方式,该SQL语句需要开发人员根据目标数据库支持的语法进行完全重写,才能够在目标数据库中执行以获得与原SQL语句在源数据库中执行相同或类似的效果,无需转化,可直接在目标数据库中执行,并获得与在源数据库中执行相同的效果。

扫描数据库

exBase通过扫描数据库的方式进行应用评估,是通过JDBC连接到用户配置的源数据库或通过用户在数据源配置中的操作系统用户访问数据库的日志文件,根据作业配置中指定的扫描间隔和扫描持续时长,持续性地对所有客户端会话信息进行采集,采集信息后对采集内容进行解析并获取SQL语句,对SQL语句进行脱敏去重操作,得到SQL样本,再调用兼容性分析逻辑对SQL的兼容情况进行分析。查看SQL样本的详细信息在完整的SQL语句中对不支持关键字进行高亮显示,以便用户定位不支持关键字片段,进行改造。

扫描应用文件

exBase通过扫描MyBatis的Mapper文件的方式进行应用评估,是通过解析用户上传的Mapper文件中的内容,获取应用文件中的SQL语句,再调用兼容性分析逻辑对SQL进行兼容性分析扫描,生成兼容性报告与改造建议。支持用户批量上传Mapper文件,或上传多个Mapper文件的压缩包,exBase可以自动解析压缩包结构并找到Mapper文件进行分析。