MariaDB 커넥터

MariaDB 커넥터 (MariaDB connector)

MariaDB 커넥터는 외부 MariaDB 데이터베이스의 테이블을 질의하고 생성할 수 있게 해 줘요.

출처: 문서

본문

요구사항 (Requirements)

MariaDB에 연결하려면 다음이 필요해요:

  • MariaDB 10.10 이상.
  • Trino 코디네이터와 워커에서 MariaDB로 네트워크 접근. 기본 포트는 3306이에요.

설정 (Configuration)

MariaDB 커넥터를 구성하려면 etc/catalogexample.properties 같은 카탈로그 속성 파일을 만들어 MariaDB 커넥터를 example 카탈로그로 마운트하세요. 연결 속성을 환경에 맞게 바꿔 다음 내용으로 파일을 만드세요:

connector.name=mariadb
connection-url=jdbc:mariadb://example.net:3306
connection-user=root
connection-password=secret

대소문자를 구분하는 이름 매핑 구성:

{
  "schemas": [
    {
      "remoteSchema": "CaseSensitiveName",
      "mapping": "case_insensitive_1"
    },
    {
      "remoteSchema": "cASEsENSITIVEnAME",
      "mapping": "case_insensitive_2"
    }],
  "tables": [
    {
      "remoteSchema": "CaseSensitiveName",
      "remoteTable": "tablex",
      "mapping": "table_1"
    },
    {
      "remoteSchema": "CaseSensitiveName",
      "remoteTable": "TABLEX",
      "mapping": "table_2"
    }]
}
case-insensitive-name-matching.config-file.refresh-period=30s

스키마와 테이블 확인:

SHOW SCHEMAS FROM example;
SHOW TABLES FROM example.web;
DESCRIBE example.web.clicks;
SHOW COLUMNS FROM example.web.clicks;
SELECT * FROM example.web.clicks;

UPDATE 연산 지원:

UPDATE table SET col1 = 1 WHERE col3 = 1
UPDATE table SET col1 = col2 + 2 WHERE col3 = 1
UPDATE table SET col1 = 1, col2 = 2, col3 = 3 WHERE col3 = 1

메타데이터 캐시를 비우고 싶을 때:

USE example.example_schema;
CALL system.flush_metadata_cache();

MariaDB에 대해 SQL로 명령을 실행하거나:

USE example.example_schema;
CALL system.execute(query => 'ALTER TABLE your_table ALTER COLUMN your_column DROP DEFAULT');

테이블 함수로 결과를 받아올 수 있어요:

SELECT
  age
FROM
  TABLE(
    example.system.query(
      query => 'SELECT
        TIMESTAMPDIFF(
          YEAR,
          date_of_birth,
          CURDATE()
        ) AS age
      FROM
        tiny.employees'
    )
  );

통계 수집:

ANALYZE TABLE table_name;

푸시다운 동작을 확인하는 예시:

SELECT * FROM nation WHERE name > 'CANADA';
SELECT * FROM nation WHERE name = 'CANADA';

더 알아보기 (Learn more)

다른 관계형 데이터베이스 커넥터가 궁금하다면 MySQL 커넥터 문서를 이어서 읽어 보세요.