Skip to main content
Version: 2.3.0-beta

JDBC

JDBC source connector

Description​

Read external data source data through JDBC.

Key features​

supports query SQL and can achieve projection effect.

Options​

nametyperequireddefault value
urlStringYes-
driverStringYes-
userStringNo-
passwordStringNo-
queryStringYes-
connection_check_timeout_secIntNo30
partition_columnStringNo-
partition_upper_boundLongNo-
partition_lower_boundLongNo-
partition_numIntNojob parallelism
common-optionsNo-

driver [string]​

The jdbc class name used to connect to the remote data source, if you use MySQL the value is com.mysql.cj.jdbc.Driver. Warn: for license compliance, you have to provide MySQL JDBC driver yourself, e.g. copy mysql-connector-java-xxx.jar to $SEATNUNNEL_HOME/lib for Standalone.

user [string]​

userName

password [string]​

password

url [string]​

The URL of the JDBC connection. Refer to a case: jdbc:postgresql://localhost/test

query [string]​

Query statement

connection_check_timeout_sec [int]​

The time in seconds to wait for the database operation used to validate the connection to complete.

partition_column [string]​

The column name for parallelism's partition, only support numeric type.

partition_upper_bound [long]​

The partition_column max value for scan, if not set SeaTunnel will query database get max value.

partition_lower_bound [long]​

The partition_column min value for scan, if not set SeaTunnel will query database get min value.

partition_num [int]​

The number of partition count, only support positive integer. default value is job parallelism

common options​

Source plugin common parameters, please refer to Source Common Options for details.

tips​

If partition_column is not set, it will run in single concurrency, and if partition_column is set, it will be executed in parallel according to the concurrency of tasks.

appendix​

there are some reference value for params above.

datasourcedriverurlmaven
mysqlcom.mysql.cj.jdbc.Driverjdbc:mysql://localhost:3306/testhttps://mvnrepository.com/artifact/mysql/mysql-connector-java
postgresqlorg.postgresql.Driverjdbc:postgresql://localhost:5432/postgreshttps://mvnrepository.com/artifact/org.postgresql/postgresql
dmdm.jdbc.driver.DmDriverjdbc:dm://localhost:5236https://mvnrepository.com/artifact/com.dameng/DmJdbcDriver18
phoenixorg.apache.phoenix.queryserver.client.Driverjdbc:phoenix:thin:url=http://localhost:8765;serialization=PROTOBUFhttps://mvnrepository.com/artifact/com.aliyun.phoenix/ali-phoenix-shaded-thin-client
sqlservercom.microsoft.sqlserver.jdbc.SQLServerDriverjdbc:microsoft:sqlserver://localhost:1433https://mvnrepository.com/artifact/com.microsoft.sqlserver/mssql-jdbc
oracleoracle.jdbc.OracleDriverjdbc:oracle:thin:@localhost:1521/xepdb1https://mvnrepository.com/artifact/com.oracle.database.jdbc/ojdbc8
gbase8acom.gbase.jdbc.Driverjdbc:gbase://e2e_gbase8aDb:5258/testhttps://www.gbase8.cn/wp-content/uploads/2020/10/gbase-connector-java-8.3.81.53-build55.5.7-bin_min_mix.jar
starrockscom.mysql.cj.jdbc.Driverjdbc:mysql://localhost:3306/testhttps://mvnrepository.com/artifact/mysql/mysql-connector-java

Example​

simple:

    Jdbc {
url = "jdbc:mysql://localhost/test?serverTimezone=GMT%2b8"
driver = "com.mysql.cj.jdbc.Driver"
connection_check_timeout_sec = 100
user = "root"
password = "123456"
query = "select * from type_bin"
}

parallel:

    Jdbc {
url = "jdbc:mysql://localhost/test?serverTimezone=GMT%2b8"
driver = "com.mysql.cj.jdbc.Driver"
connection_check_timeout_sec = 100
user = "root"
password = "123456"
query = "select * from type_bin"
partition_column = "id"
partition_num = 10
}

Changelog​

2.2.0-beta 2022-09-26​

  • Add ClickHouse Source Connector

2.3.0-beta 2022-10-20​

  • [Feature] Support Phoenix JDBC Source (2499)
  • [Feature] Support SQL Server JDBC Source (2646)
  • [Feature] Support Oracle JDBC Source (2550)
  • [Feature] Support StarRocks JDBC Source (3060)
  • [Feature] Support GBase8a JDBC Source (3026)