kettle连接DM7(达梦7)数据库

摘要:
由于Kettle将在启动期间加载lib中的所有依赖库,如果在启动Kettle时复制驱动程序类,则不会立即加载它。此时,只需重新启动水壶,让它重新加载DM驱动程序。

0.需求背景

应项目国产化适配需要,后续需要将数据迁移至DM7数据库中,调研kettle连接DM7

1.kettle连接DM7的相关操作

1.1 DM7驱动安装

kettle连接DM7,本质上是通过JDBC连接,因而需要将DM7的JDBC驱动放到${kettle_home}lib目录中。DM7的JDBC驱动可以到DM7的安装目录中${dm_home}driversjdbc中,将以下jar文件复制到kettle的lib目录:

DM7JdbcDriver15.jar
DM7JdbcDriver16.jar
DM7JdbcDriver17.jar

1.2 配置kettle数据库连接

  • 1.在kettle中新建一个数据库连接,连接类型选择:Generic database
  • 2.自定义连接URL,填写:jdbc:dm://${ip}:5236/DMSERVER
  • 3.自定义驱动类名称:dm.jdbc.driver.DmDriver
  • 4.用户名:SYSDBA(自定义)
  • 5.密码:对应用户名的密码
  • 6.连接方式:保留默认的Native(JDBC)即可。

1.3 测试连接

点击测试,查看是否连接成功。

2.可能遇到的问题

2.1 测试连接失败,找不到dm.jdbc.driver.DmDriver类

可能是在安装DM驱动时,没有重启kettle。因为kettle会在启动过程中加载lib中的所有依赖库,所以,如果是在kettle已经启动的情况下复制驱动类,并不会立即加载的。此时,只需要重启下kettle,让其重新加载DM驱动即可。

2.2 表输入中提示找不到表、或者无法解析字段的错误

类似于MySQL中的数据库,DM7数据库中的每张表是归属于某个schema(模式)的。所以在表输入/表输出组件中,一定要通过schema去选定要操作的表。而不要直接从表的子树中选定要操作的表,不然DM无法找到要操作的表。当然,在表输入中,直接手动编写SQL也是可以的,在from子句中指定${schema}.${table_name},明确指定表的所属schema即可。

免责声明:文章转载自《kettle连接DM7(达梦7)数据库》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇从excel导入数据时显现进度条用java导入Excel数据到数据库(实时进度条)python获取cookie的方法下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

PostgreSQL 语法

PostgreSQL 语法 SQL Shell(psql) 默认情况下 PostgreSQL 安装完成后,自带了一个命令行工具 SQL Shell(psql)。 Linux 系统可以直接切换到 postgres 用户来开启命令行工具: # sudo -i -u postgres Windows 系统一般在它的安装目录下: Program Files →...

jdbc与TiDB数据库交互的过程

以下是使用jdbc操作TiDB数据库,得到的交互过程和指令的说明 ==>代表发送给数据库的指令 //加载驱动程序Class.forName(driver); //连接数据库 Connection conn =DriverManager.getConnection(url, user, password); ==>(cmd=mysql.ComQ...

Mycat(水平拆分--分表 全局序列)

在实现分库分表的情况下,数据库自增主键已经无法保证自增主键的全局唯一。为此Mycat提供了全局sequence,并且提供了包含本地配置和数据库配置等多种实现方式。 1、本地文件 此方式 mycat 将sequence 配置到文件中,当使用到 sequence 中的配置后, Mycat 会更下 classpath 中的 sequence_conf.prope...

saas系统多租户数据隔离的实现(一)数据隔离方案

0. 前言 前几天跟朋友聚会的时候,朋友说他们公司准备自己搞一套saas系统,以实现多个第三方平台的业务接入需求。聊完以后,实在手痒难耐,于是花了两天时间自己实现了两个saas系统多租户数据隔离实现方案。俗话说“独乐乐不如众乐乐”,所以我把我的“研究成果”写出来,让大家乐呵乐呵。 在分享我的研究成果之前,我们先了解一下相关的定义吧。如果对这部分内容熟悉的同...

使用Mybatis出现的问题+配置优化+ResultMap

一、可能出现的问题 1、Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure 原因:jdbc.properties 文件 url=jdbc:mysql://localhost...

查看sql server数据库连接情况

1.通过系统的“性能”来查看:开始->管理工具->性能(或者是运行里面输入 mmc)然后通过添加计数器添加 SQL 的常用统计(MSSQL General Statistics) 然后在下面列出的项目里面选择 用户连接(User Connection) 就可以时时查询到sql server数据库连接数了。 2.通过系统表来查询: 查询数据库当前...