MariaDB Connect engine JDBC 연결 사용하기

MariaDB에서 이기종 데이터베이스를 사용하기 위해서 Connect 엔진을 사용합니다.

connect 엔진에 대한 MariaDB의 웹페이지는 아래를 참고하시면 됩니다.

https://mariadb.com/kb/en/library/connect/

connect 엔진을 이용해서 이기종 데이터 베이스를 연결할때 ODBC를 사용을 했습니다.

JDBC를 사용하기 위해서는 10.2.2 / 10.1.17 / 10.0.27 이상의 버전을설치하면 됩니다.

JDBC를 사용하는 방법은 아래 웹페이지를 참고합니다.

https://mariadb.com/kb/en/library/connect-jdbc-table-type-accessing-tables-from-another-dbms/

해당 웹페이지만으로 실제 사용하기에는 쉽지 않아서 아래 테스트를 한 내용을 정리해 봅니다.

먼저 MariaDB JDBC connector를 이용해서 같은 서버의 MariaDB를 JDBC로 연결해서 사용하는 방법은 아래와 같습니다.

  • JRE 설치
  • my.cnf 설정 : connect_jvm_path, connect_class_path
  • mariadb start
  • connect 엔진 global variables 확인
  • create table

# apt-get install default-jre

# vi my.cnf
##### connect engine
connect_jvm_path="/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server"
connect_class_path="/ohnew/mariadb/connect/mariadb-java-client-2.2.3.jar"

# systemctl start mariadb

MariaDB> show global variables like 'conn%path';

MariaDB> create table jt_t1 engine=connect table_type=jdbc tabname=t1 connection='jdbc:mariadb://localhost:3306/ohnew' option_list="User=root,Password=";

아래는 다른 서버에 있는 oracle 데이터베이스를 JDBC로 연결해서 사용하는 방법입니다.

  • my.cnf 설정 : connect_jvm_path, connect_class_path
  • mariadb start
  • create server
  • create table

# vi my.cnf
##### connect engine
connect_jvm_path="/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server"
connect_class_path="/ohnew/mariadb/connect/ojdbc6.jar"

# systemctl start mariadb

MariaDB> create server 'oracle' foreign data wrapper 'oracle' options (
HOST 'jdbc:oracle:thin:@192.168.100.101:1521:orcl',
DATABASE 'ORCL',
USER 'system',
PASSWORD 'manager',
PORT 0,
SOCKET '',
OWNER 'SYSTEM');

MariaDB> create table jt_ora_t1 engine=connect table_type=JDBC connection='oracle/ohnew.t1' SRCDEF='select c1 from ohnew.t1';