kettle全量多表数据同步
XXXKETTLE全量多表数据同步 1 一. 建立资料库 3 1.1 添加资源库 3 二. 前期准备工作 7 2.1 异结构数据传输 7 2.2 数据校验 9 三. 建立转换 10 3.1 创建‘转换’(GET—ORACLE-TABLES) 10 3.1.1 创建数据源 10 3.1.2 添加核心对象 12 3.2 创建‘转换’(INSERT—MYSQL-TABLES) 15 3.2.1 创建数据源 15 3.2.2 添加核心对象 15 3.2.3 转换设置 17 四. 建立作业 18 4.1 创建‘ORACLE TO MYSQL’作业 18 4.2 添加核心对象 18 4.3 设置GET-TABLES 19 4.4 设置INSERT-MYSQL 23 五. 实验验证 28 5.1 ORACLE插入数据 28 5.2 执行JOB 29 5.3 MYSQL数据验证 30 ### Kettle全量多表数据同步 #### 一. 建立资料库 在进行全量多表数据同步之前,首先需要建立一个资源库来存放所有的转换和作业。资源库是Kettle的一个核心概念,它用于存储和管理转换、作业和其他与数据处理相关的对象。 **1.1 添加资源库** 为了确保资源库能够正常运行,必须遵循一些基本的步骤: 1. **启动Kettle Spoon**: 首先打开Kettle Spoon应用。 2. **选择资源库类型**: 在资源库对话框中选择要使用的资源库类型,例如MySQL或PostgreSQL等。 3. **配置资源库连接**: 输入资源库服务器的地址、端口、数据库名称以及登录凭据等信息。注意路径不能包含中文字符,因为这可能会导致连接失败或其他兼容性问题。 4. **测试连接**: 在保存配置之前,建议先测试一下连接是否成功。 5. **保存并使用资源库**: 如果一切正常,可以保存资源库连接,并在后续的转换和作业中使用它。 #### 二. 前期准备工作 在实际的数据同步操作之前,还需要完成一系列的准备工作,以确保整个过程的顺利进行。 **2.1 异结构数据传输** 异构数据传输是指将不同类型的数据库之间的数据进行迁移。在本例中,主要涉及的是从Oracle数据库到MySQL数据库的数据迁移。这一过程可以通过多种方式实现,但在这里我们使用Navicat工具来完成这一任务。 - **安装Navicat工具**: 首先确保已经安装了Navicat for Oracle和Navicat for MySQL。 - **配置源数据库**: 在Navicat中配置Oracle数据库的连接信息。 - **配置目标数据库**: 同样地,配置MySQL数据库的连接信息。 - **进行数据迁移**: 使用Navicat的数据迁移功能,选择Oracle作为源数据库,MySQL作为目标数据库,然后选择要迁移的表和字段,最后执行迁移操作。 **2.2 数据校验** 在进行数据迁移之后,必须对迁移后的数据进行校验,以确保数据的一致性和完整性。这一步骤通常包括以下内容: - **检查表结构**: 确认MySQL中的表结构与Oracle中的表结构相同。 - **比较数据**: 使用SQL查询或其他工具来比较两个数据库中的数据是否一致。 - **修复错误**: 如果发现任何差异,需要及时修复这些错误。 #### 三. 建立转换 **3.1 创建‘转换’(GET—ORACLE-TABLES)** 1. **创建数据源**: 在Kettle Spoon中创建一个新的转换,并添加Oracle数据库连接作为数据源。 2. **添加核心对象**: - **获取表名字**: 使用“获取表”步骤获取指定模式下的所有表名。 - **复制记录到结果**: 使用“复制记录到结果”步骤将获取的表名记录复制到结果集中,以便后续使用。 3. **预览记录**: 使用“预览”功能检查获取的表名是否正确。 **3.2 创建‘转换’(INSERT—MYSQL-TABLES)** 1. **创建数据源**: 由于已经存在MySQL连接,这里无需再次创建数据源。 2. **添加核心对象**: - **表输入**: 使用“表输入”步骤获取之前获取的表名列表。 - **表输出**: 使用“表输出”步骤将数据写入MySQL中的对应表。 3. **转换设置**: - 在“表输出”步骤中,通过设置表名为变量`${tablename}`来动态确定要写入的目标表。 #### 四. 建立作业 **4.1 创建‘ORACLE TO MYSQL’作业** 1. **创建作业**: 在Kettle Spoon中创建一个新的作业。 2. **添加核心对象**: - **Start**: 添加一个“开始”步骤。 - **两个转换**: 分别添加前面创建的两个转换。 - **Success**: 添加一个“成功”步骤。 3. **设置GET-TABLES**: 将“开始”步骤连接到“GET—ORACLE-TABLES”转换。 4. **设置INSERT-MYSQL**: 将“GET—ORACLE-TABLES”转换连接到“INSERT—MYSQL-TABLES”转换,并将其连接到“成功”步骤。 #### 五. 实验验证 在完成所有的配置和设置之后,需要进行实验验证,以确保数据同步的准确性和完整性。 **5.1 Oracle插入数据** 1. **插入数据**: 在Oracle数据库中手动插入一些数据。 2. **执行JOB**: 在Kettle Spoon中执行之前创建的作业。 **5.2 执行JOB** 1. **运行作业**: 运行作业,观察作业的执行情况,确保没有错误发生。 **5.3 MySQL数据验证** 1. **验证数据**: 检查MySQL数据库中对应表的数据是否正确无误。 2. **插曲**: 如果初次执行作业时出现同步不成功的情况,可以尝试重新执行作业,有时候第二次执行可能会成功。 通过以上步骤,可以实现Kettle全量多表数据同步的功能。在整个过程中,需要注意每一步的细节,确保每个步骤都按照正确的顺序和方法执行,这样才能够保证数据同步的准确性和高效性。
剩余36页未读,继续阅读
- qq_361829962021-09-27什么乱七八糟的东西啊,一点有用信息都没有
- 粉丝: 1
- 资源: 10
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 考虑微网新能源经济消纳的共享储能优化配置 共享储能是可再生能源实现经济消纳的解决方案之一,在适度的投资规模下,应尽力实现储能电站
- comsol光学仿真 光子晶体光纤 lunwen复现(图是仿的一个spr传感器和一个三芯分束器)图左原文,图右仿的结果 基于SP
- comsol 锂枝晶模型 多枝晶随机扰动生长,可以直接拿来用,不用自己建模,三种物理场:相场、浓度场和电场;锂离子电池枝晶生长分
- comsol电弧放电模型,采用磁流体方程模拟电弧放电现象,耦合电磁热流体以及电路多个物理场
- fracman离散裂隙网络建模 水力压裂 油气藏数值模拟
- 10bit 100M sar adc 采用的是tsmc28工艺库
- 2022 mybati plugin
- 基于递归最小二乘法估计的车辆前后轮胎的侧偏刚度,如仿真结果图可知,在恒定转角变化速度下,能够很好的估算出前后轮胎的平均刚度,该估
- 2023 mybati plugin
- 2024 mybatis plugin