Skip to content

Cannot connect Vertica through JDBC on Dinky #4371

@zhongsheng-chen

Description

@zhongsheng-chen

Search before asking

  • I had searched in the issues and found no similar issues.

What happened

hi guys, I tried to connect Vertica from Dinky 1.2.3 through JDBC, but failed with errors:
Unable to create a source for reading table 'default_catalog.default_database.remote_vertica_table'.

Table options are:

'connector'='jdbc'
'driver'='com.vertica.jdbc.Driver'
'password'='******'
'table-name'='omdata.pln_business_apply'
'url'='jdbc:vertica://192.168.15.128:5433/bankgy'
'username'='bankgy'

. The codes run on Dinky are

CREATE TABLE remote_vertica_table (
id INT,
applicant_name VARCHAR(100),
status VARCHAR(20),
apply_date DATE,
start_dt DATE,
end_dt DATE
) WITH (
'connector' = 'jdbc',
'url' = 'jdbc:vertica://192.168.15.128:5433/bankgy',
'driver' = 'com.vertica.jdbc.Driver',
'username' = 'bankgy',
'password' = 'P@ssw1rd',
'table-name' = 'omdata.pln_business_apply'
);
select * from remote_vertica_table;

What you expected to happen

cannot connect vertica

How to reproduce

see before

Anything else

The Dinky was deployed with docker compose,

docker-compose.yml

version: "3.9"

services:
db:
image: mysql:8.0.28
container_name: dinky-db
environment:
MYSQL_ROOT_PASSWORD: P@ssw1rd
MYSQL_DATABASE: dinky
MYSQL_USER: dinky
MYSQL_PASSWORD: P@ssw1rd
TZ: Asia/Shanghai
restart: unless-stopped
volumes:
- mysql_data:/var/lib/mysql
- mysql_logs:/var/log/mysql
- ./opt/mysql/initdb.d:/docker-entrypoint-initdb.d
- ./etc/mysql/conf.d/my.cnf:/etc/mysql/conf.d/my.cnf
healthcheck:
test: ["CMD", "mysqladmin", "-uroot", "-pP@ssw1rd", "ping", "-h", "localhost"]
interval: 10s
timeout: 5s
retries: 5
networks:
dinky:
ipv4_address: 172.20.67.12

dinky:
image: "dinkydocker/dinky-standalone-server:${DINKY_VERSION}-flink${FLINK_VERSION}"
container_name: dinky-server
restart: unless-stopped
ports:
- "8888:8888"
env_file: .env
depends_on:
- db
- jobmanager
- taskmanager
volumes:
- ${CUSTOM_JAR_PATH}:/opt/dinky/customJar/
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8888"]
interval: 10s
timeout: 5s
retries: 5
networks:
dinky:
ipv4_address: 172.20.67.13

jobmanager:
image: flink:${FLINK_VERSION}-scala_2.12-java8
container_name: dinky-jobmanager
restart: unless-stopped
ports:
- "10081:8081"
command: jobmanager
env_file: .env
depends_on:
- db
volumes:
- ${CUSTOM_JAR_PATH}:/opt/flink/lib/customJar/
networks:
dinky:
ipv4_address: 172.20.67.14

taskmanager:
image: flink:${FLINK_VERSION}-scala_2.12-java8
restart: unless-stopped
container_name: dinky-taskmanager
command: taskmanager
env_file: .env
depends_on:
- db
- jobmanager
volumes:
- ${CUSTOM_JAR_PATH}:/opt/flink/lib/customJar/
networks:
dinky:
ipv4_address: 172.20.67.15

networks:
dinky:
ipam:
config:
- subnet: 172.20.67.0/24

volumes:
mysql_data:
mysql_logs:

#.env file
DINKY_VERSION=1.2.3
FLINK_VERSION=1.18

Customize other dependent paths,

which will be mounted to dinky and flink containers

自定义其他依赖路径,会挂载到dinky和flink容器中

CUSTOM_JAR_PATH=./opt/dinky/extends/
FLINK_PROPERTIES="jobmanager.rpc.address: jobmanager"
TZ=Asia/Shanghai

mysql,h2,pgsql

DB_ACTIVE=mysql

use h2 db localtion file path

#H2_DB=./tmp/db/h2

Mysql Config

if ${DB_ACTIVE} use mysql, please config the following

如果 DB_ACTIVE 配置为mysaql,请修改下面配置,否则忽略

MYSQL_ADDR=172.20.67.12:3306
MYSQL_DATABASE=dinky
MYSQL_USERNAME=dinky
MYSQL_PASSWORD=P@ssw1rd

Postgres Config

if ${DB_ACTIVE} use pgsql, please config the following

如果 DB_ACTIVE 配置为pgsql,请修改下面配置,否则忽略

##POSTGRES_USER=dinky
#POSTGRES_PASSWORD=P@ssw1rd
#POSTGRES_ADDR=localhost:5432
#POSTGRES_DB=dinky

Version

dev

Are you willing to submit PR?

  • Yes I am willing to submit a PR!

Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions