99%的人都不知道数据库异构迁移如此简单!


    接着上一篇的话题,现在国内数据库百花齐放,超过200种关系型数据库,大家在进行数据库国产化改造的过程中,难免要进行各种数据迁移,代码转换甚至改造等工作。

    实际上这几年我们做了不少数据库迁移改造项目,当然大部分是数据库国产化。因此我们也沉淀出了一些好用的工具,因此今天再分享一个好用且实用的数据异构迁移工具,实际上并不仅仅是数据迁移,还可以进行相应代码的转换。

    这个工具就是 Database Migration Toolkit,我们简称为MTK. 这里给大家简单介绍一下该工具的使用和常用功能,最后并给大家演示一下。针对MTK工具的一些主要功能,简单说一下说明(软件下载地址 https://docs.mogdb.io/zh/mtk/v2.0/release-2.9)。

多数据库类型支持

  • 支持 Oracle,DB2,SQL Server,MySQL,Informix,PostgreSQL、MogDB到MogDB数据库的迁移(实际上目标端还支持openGauss和PostgreSQL)。

  • 支持将数据库内容导出成可执行的 SQL 脚本 (源数据库内容迁移到文本)。

  • 支持调整数据迁移过程中的批量查询、批量插入大小等细粒度参数,来调整数据迁移的性能。

  • 支持数据迁移时的多并发,并行和数据分片。

  • 支持迁移对象结构和数据;也支持仅迁移结构或者仅迁移数据(在结构已经迁移完之后)。

  • 支持表级和 Schema 级的迁移范围限定,允许指定schema下全部对象或者某些对象进行迁移 。

  • 支持迁移过程中的 Schema 重映射,也就是支持将对象从源Schema迁移到目标端的不同名Schema下 。

  • 支持Oracle/MySQL/DB2到MogDB/openGauss的存储过程,函数,触发器,包迁移并对语法进行改写。


源数据库 目标数据库
Oracle MogDB
Oracle openGauss
Oracle MySQL
Oracle PostgreSQL
MySQL MogDB
MySQL openGauss
MySQL PostgreSQL
DB2 MogDB
DB2 openGauss
DB2 MySQL
DB2 PostgreSQL
SqlServer MogDB
SqlServer openGauss
SqlServer MySQL
SqlServer PostgreSQL
PostgreSQL MogDB
PostgreSQL openGauss
Informix MogDB
Informix openGauss


   话不多说,我们这里直接来带大家玩一玩这个好用的工具。当你下载并解压后,首先会看到2个程序,一个是mtk,另外一个是mtkd。其中mtkd是图形化形式,如果你更喜欢命令行,那么使用mtk即可。

   首先你需要获得license,使用邮箱申请即可(实际上你可以白嫖license,听说很多客户都在白嫖,甚至友商也在用)。

    [root@Ora11g mtkd]# ./mtkd license gen
    License File Not Found (default license.json)
    The License code is invalid, start applying
    ✔ Email: zhenxu.li@enmotech.com█
    Start applying for email zhenxu.li@enmotech.com authorization.
    Start parsing the interface to return data.
    Successful application for authorization. Please check the mail and save it as license.json.
    [root@Ora11g-ogg-Target mtkd]#