Kettle如何连接SQL Server和问题处理

简介

Kettle(也称为 Pentaho Data Integration)是一款开源的 ETL(Extract, Transform, Load)工具,由 Pentaho 开发。ETL 是指从一个数据源(通常是数据库)中提取数据,进行转换,然后加载到目标系统中。Kettle 为数据集成和数据仓库开发提供了强大的工具和功能。

环境

kettle 版本: 7.1

数据库: sql sever 2022

系统环境: windows

kettle 连接 sql sever

  1. 打开 Spoon(Kettle 的图形化界面工具): 启动 Kettle 中的 Spoon 工具。

  2. 创建数据库连接: 在 Spoon 中,选择"View" > "Database Connections"以打开数据库连接视图。右键单击空白区域,选择"Create Connection"。

  3. 选择数据库类型: 在弹出的对话框中,选择数据库类型为"Microsoft SQL Server"。

  4. 填写连接信息: 输入以下连接信息:

  • Connection Name: 连接的名称,可以随意取。
  • Database Hostname: SQL Server 数据库的主机名或 IP 地址。
  • Database Port: SQL Server 数据库的端口,默认为 1433。
  • Database Name: 要连接的数据库名称。
  • Username: 数据库的用户名。
  • Password: 数据库用户的密码。
  1. 测试连接: 点击"Test"按钮,确保连接测试成功。
  2. 保存连接: 如果测试成功,点击"OK"按钮保存你的数据库连接。

遇到的问题

  1. 驱动问题

    错误连接数据库 [xxx] : org.pentaho.di.core.exception.KettleDatabaseException:
    Error occurred while trying to connect to the database

    Driver class 'org.gjt.mm.mysql.Driver' could not be found, make sure the 'MySQL' driver (jar file) is installed.
    org.gjt.mm.mysql.Driver

    org.pentaho.di.core.exception.KettleDatabaseException:
    Error occurred while trying to connect to the database
    ...

下载连接 : JDBC Driver for SQL Server https://learn.microsoft.com/zh-cn/sql/connect/jdbc/release-notes-for-the-jdbc-driver?view=sql-server-ver16

解决办法: 根据 jdk 版本进行选择。将下载的驱动文件拷贝到 kettle 安装目录的 data-integration/lib 下,重启进行测试

  1. SQL Server 提示不能通过 1433 端口登录

解决办法:

  • 打开 cmd 用 telnet localhost 1433 进行测试,如果无法连接表示 1433 端口还未打开
  • 开始菜单找到,点击运行
  • 对 MSSQLSERVER 的协议(本机数据库的实例名)、客户端协议启用 TCP/IP,再右键到 TCP/IP 协议,将 IP 和端口进行设置并且启用

  • 设置完成后,将 sql sever 服务进行重启
相关推荐
全栈小516 天前
【数据库】零门槛在线体验KingbaseES平台,SQL Server模式高阶玩法,动态创建数据体验函数、存储过程等功能
数据库·sql server·金仓·kingbasees平台
夜光小兔纸19 天前
SQL Server 查询所有表数据量
数据库·sql·sql server
夜光小兔纸22 天前
SQL Server 查询数据库中所有表中所有字段的数据类型及长度
数据库·sql·sql server
夜光小兔纸23 天前
SQL Server 修改数据库名及物理数据文件名
运维·数据库·sql server
Waloo1 个月前
STUFF 函数
数据库·sql server
夜光小兔纸2 个月前
SQL Server 数据库重命名
运维·数据库·sql server
只有努力才会成功2 个月前
数据库-SQL Server
sql server
Alan521593 个月前
Java + SQLServer:一键导出数据库表结构为 Markdown 文档
java·sql server
梓芮.3 个月前
T-SQL 语言基础: 集合运算(Union, Intersect, Except)
sql server·t-sql·t-sql 子查询·ms sql·t-sql 集合运算·t-sql 集合交集差集·t-sql 集合 并集
全栈小53 个月前
【Sql Server】在SQL Server中生成雪花ID(Snowflake ID)
sql server·雪花id