查询

Palo 支持 Mysql 协议访问。您可以使用任意只用标准的 Mysql 客户端或程序库访问 Palo。

使用 MySQL 查询

通过 MySQL 客户端连接到 Palo 以后,可以通过 show databases; 查看数据库。使用 use db_name; 选择数据库,使用 show tables; 查看数据库中的表。

可以通过 help create database;help create table; 查看建库和建表帮助。

执行查询的时候,只要直接输入SQL语句即可

使用 JDBC/ODBC 查询

可以使用 JDBC/ODBC 连接 Palo,连接 url 在集群信息页面可以获得。下面是 JDBC 的示例代码,需要使用 MySQL 的 JDBC 驱动

import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;

public class Test {
    public static void main(String[] args) {
        // 加载驱动程序
        try {
            Class.forName("com.mysql.jdbc.Driver");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }

        // 创建数据库连接
        java.sql.Connection conn = null;
        try {
            String url = "jdbc:mysql://your_cluster_node:9030/testDb";
            String user = "admin";
            String password = "my_password";
            conn = DriverManager.getConnection(url, user, password);
        } catch (SQLException e) {
          e.printStackTrace();
        }

        // 发起查询,取结果
        java.sql.Statement stmt = null;
        ResultSet rs = null;
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery("select * from testTable limit 10");
            while (rs.next()) {
                System.out.print(rs.getInt("k1") + " ");
                System.out.println(rs.getString("k2") + " ");
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }

        // 关闭数据库连接
        try {
            conn.close();
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}