文章
· 二月 6, 2022 阅读大约需 5 分钟

翻译文章-数据迁移工具 - 第二部分:从My SQL到IRIS

    本文是上一篇关于如何从流行数据库(如 PostgreSQL 和 MySQL)迁移到 IRIS 的后续文章。

    我们将使用与从 PostgreSQL 迁移相同的过程。 但是,您会发现它更容易,因为 MySQL 中的数据类型与 IRIS 非常相似。 这就是为什么我们不需要在列中创建转换规则。

    获取示例数据到迁移过程

    在 GitHub 中,可以下载 docker-compose 项目来构建和运行 2 个数据库:

  •     源数据库:带有示例数据库的 MySQL 数据库 Docker 实例。
  •     目标数据库:InterSystems IRIS 数据平台 Docker 实例,具有用于接收源数据库的现成模式。

    要获取示例并运行它,请执行以下步骤:

    转到 git 存储库 https://github.com/yurimarx/migration-mysql-iris
    克隆项目:https://github.com/yurimarx/migration-mysql-iris.git
    转到项目文件夹migration-mysql-iris。
    进行构建:docker-compose build。
    执行容器:docker-compose up -d。
    如果一切正常,请使用实例检查您的 docker 桌面:

    

    

    关于要迁移的数据

    要迁移的数据与第一部分中使用的数据模型相同,在这里表示:

    

    

    所以,从 MySQL 到 IRIS 的迁移过程会迁移:

  •     8张表
  •     5000行销售数据。
  •     2500 行用户数据。
  •     200 行产品数据。
  •     50行商店数据。
  •     100行国家数据。
  •     30行城市数据。
  •     5 行 status_name。

    迁移目标将是 InterSystems IRIS 数据库中 USER 命名空间内的 dc_test 模式。

    从 MySQL 迁移到 IRIS 的开源工具:DBeaver

    在第一部分中,我们使用 DBeaver 社区版进行迁移。 我们将再次使用它。

    DBeaver 是一个数据库工具,用于连接、创建、删除、选择、更新和删除市场上主要数据库产品中的数据对象。 从以下网址下载:https://openexchange. intersystems.com/package/DBeaver。 现在按照安装说明将这款出色的产品安装到您的笔记本电脑或台式机中。

    DBeaver 可用于在数据库连接之间迁移数据,即使它们来自不同的制造商和版本。

    使用 DBeaver 连接源数据库和目标数据库

 

    现在我们将设置要迁移的数据库连接。

    设置 MySQL 到 DBeaver 的连接:
       1. 在 DBeaver 中,转到文件 > 新建。
       2. 选择数据库连接并单击下一步:

    

    3. 选择 SQL 选项卡 > MySQL,然后单击下一步:

    

    4. 填写 Main 选项卡中的 MySQL 连接字段,如下图所示:

    

  •     主机:本地主机
  •     端口:3306
  •     数据库:db
  •     用户名:user
  •     密码:密码

    5. 转到驱动程序属性选项卡并将 allowPublicKeyRetrieval 设置为值 TRUE:

    

    6. 在驱动程序属性选项卡中继续,并将 useSSL 设置为值 FALSE:

    

    7. 如果 DBeaver 请求下载 MySQL 驱动程序,请按 Yes 或 OK。

    8. 单击完成。

 

    设置 InterSystems IRIS 与 DBeaver 的连接:

    在第一部分中,您配置了 IRIS 连接,但如果您没有保存它,请执行以下操作:
    1. 在 DBeaver 中,转到文件 > 新建。
    2. 选择数据库连接并单击下一步:

    

    3. 选择 SQL 选项卡 > InterSystems IRIS 并单击下一步:

    

    4. 如果 DBeaver 请求下载 InterSystems IRIS 驱动程序,请按 Yes 或 OK。
    5. 设置 InterSystems IRIS 连接字段,如下图所示:

    

  •  主机:本地主机
  •  数据库/架构:用户
  •  用户名:_SYSTEM
  •  密码:SYS
  •  单击文本连接并完成。

    连接(db 和 user)在 Database Navigator 中可用:

    

    进行迁移

    迁移过程与第一部分中描述的非常相似。只需按照以下步骤操作:

    1. 展开 db connection > Databases > db > Tables 并选择所有表。 在选定的表上单击鼠标右键,然后选择导出数据,如下图所示:

    

    2. 选择数据库,如图所示,然后单击下一步:

    

    3. 单击选择按钮:

    

    4. 选择 dc_test 并点击 OK(注:如果您需要在目标和源列之间创建高级转换,请点击 Columns 按钮)。

    

    5.    现在,单击下一步。

    

    6. 将 Fetch size 设置为 1000000,然后单击下一步。

    

    7. 接受数据加载设置中的默认值,然后单击下一步。

    

    8. 在确认中单击继续。

    

    9. 现在,如果您打开 Database Navigator,您将能够看到 InterSystems IRIS dc_test 模式中的所有 MySQL 表。

    

    就像 PostgreSQL 迁移一样,MySQL 迁移过程对于表来说非常简单。 但是,对于视图、函数、触发器和存储过程,您需要使用 ObjectScript 或 SQL 重写 SQL 源代码。
 

讨论 (1)0
登录或注册以继续