全部产品
Search
文档中心

E-MapReduce:Katalog JDBC

更新时间:Nov 07, 2025

Katalog JDBC adalah jenis Katalog Eksternal yang didukung sejak versi 3.0. Topik ini menjelaskan cara membuat dan melihat katalog JDBC.

Latar Belakang

Dengan katalog JDBC, Anda dapat:

  • Langsung menanyakan data di MySQL, PostgreSQL, dan sumber data yang kompatibel dengan protokol mereka.

  • Mentransformasi dan mengimpor data dari sumber data JDBC menggunakan kemampuan INSERT INTO bersama dengan katalog JDBC.

Buat katalog JDBC

Sintaksis

CREATE EXTERNAL CATALOG <catalog_name>
[COMMENT <comment>]
PROPERTIES
( 
  "key"="value", 
  ...
);

Parameter

  • catalog_name: Nama katalog JDBC. Parameter ini wajib. Nama harus memenuhi persyaratan berikut:

    • Nama dapat berisi huruf, angka, dan garis bawah (_). Harus dimulai dengan huruf.

    • Nama harus memiliki panjang 1 hingga 64 karakter.

  • comment: Opsional. Deskripsi katalog JDBC.

  • PROPERTIES: Properti katalog JDBC. Tabel berikut menjelaskan propertinya.

    Properti

    Wajib

    Deskripsi

    tipe

    Ya

    Tipe sumber data. Atur nilainya menjadi jdbc.

    user

    Ya

    Nama pengguna yang digunakan untuk masuk ke database.

    password

    Ya

    Kata sandi yang digunakan untuk masuk ke database.

    jdbc_uri

    Ya

    URI untuk driver JDBC untuk terhubung ke database.

    • Jika MySQL digunakan, tentukan URL dalam format "jdbc:mysql://ip:port".

    • Jika PostgreSQL digunakan, tentukan URL dalam format "jdbc:postgresql://ip:port/db_name".

    driver_url

    Ya

    URL untuk mengunduh paket JAR driver JDBC.

    Untuk instans StarRocks Serverless, Anda harus mengunggah paket JAR driver JDBC ke OSS dan mengatur izin baca-publik untuk paket JAR tersebut. Untuk informasi lebih lanjut, lihat Unggah sederhana dan Atur ACL untuk bucket. Kemudian, atur parameter driver_url ke URL HTTP yang berisi titik akhir internal dari bucket OSS. Contoh: http://<YourBucketName>.oss-cn-xxxx-internal.aliyuncs.com/mysql-connector-java-*.jar.

    driver_class

    Ya

    Nama kelas driver JDBC. Anda dapat menentukan nama kelas berdasarkan kebutuhan bisnis Anda.

    • MySQL:

      • Untuk MySQL 5.X dan sebelumnya, gunakan com.mysql.jdbc.Driver.

      • Untuk MySQL 6.X dan setelahnya, gunakan com.mysql.cj.jdbc.Driver.

    • PostgreSQL: Gunakan org.postgresql.Driver.

Contoh

CREATE EXTERNAL CATALOG mysql_catalog
PROPERTIES
(
    "type"="jdbc",
    "user"="root",
    "password"="xxxxx",
    "jdbc_uri"="jdbc:mysql://127.0.0.1:3306",
    "driver_url"="http://<YourBucketName>.oss-cn-xxxx-internal.aliyuncs.com/mysql-connector-java-*.jar",
    "driver_class"="com.mysql.cj.jdbc.Driver"
);
Catatan

Tentukan versi driver MySQL dalam mysql-connector-java-*.jar berdasarkan kebutuhan bisnis Anda.

Melihat katalog JDBC

  • Anda dapat menggunakan pernyataan SHOW CATALOGS untuk menanyakan semua katalog dalam kluster StarRocks saat ini.

    SHOW CATALOGS;
  • Anda juga dapat menggunakan pernyataan SHOW CREATE CATALOG untuk menanyakan pernyataan pembuatan Katalog Eksternal tertentu. Sebagai contoh, gunakan pernyataan berikut untuk menanyakan pernyataan pembuatan katalog JDBC jdbc0.

    SHOW CREATE CATALOG jdbc0;

Hapus katalog JDBC

Anda dapat menggunakan pernyataan DROP CATALOG untuk menghapus katalog JDBC.

Sebagai contoh, gunakan pernyataan berikut untuk menghapus katalog JDBC jdbc0.

DROP Catalog jdbc0;

Gunakan katalog JDBC untuk menanyakan data

  • Anda dapat menggunakan operasi berikut untuk menanyakan data dalam tabel di dalam katalog JDBC.

    1. Gunakan pernyataan SHOW DATABASES untuk melihat database dalam kluster tempat katalog yang ditentukan berada.

      SHOW DATABASES FROM <catalog_name>;
    2. Gunakan pernyataan SET CATALOG untuk beralih katalog yang berlaku dalam sesi saat ini.

      SET CATALOG <catalog_name>;

      Kemudian gunakan pernyataan USE untuk menentukan database yang berlaku dalam sesi saat ini.

      USE <db_name>;

      Atau, Anda dapat menggunakan pernyataan USE untuk langsung beralih sesi ke database tertentu di bawah katalog target.

      USE <catalog_name>.<db_name>;
    3. Gunakan pernyataan SELECT untuk menanyakan tabel target dalam database target.

      SELECT * FROM <table_name>;
  • Anda juga dapat menggunakan pernyataan SELECT untuk menanyakan tabel target dalam database target.

    SELECT * FROM <catalog_name>.<database_name>.<table_name>;

Tanya Jawab Umum

T: Bagaimana cara menangani kesalahan "Malformed database URL, failed to parse the main URL sections"?

J: Kesalahan ini biasanya disebabkan oleh URI yang salah dalam parameter jdbc_uri. Periksa dan pastikan bahwa URI yang Anda masukkan benar. Untuk informasi lebih lanjut, lihat deskripsi parameter untuk PROPERTIES dalam topik ini.