You need to enable JavaScript to run this app.
导航
连接实例
最近更新时间:2024.02.18 19:01:52首次发布时间:2023.12.15 14:34:20

本文为您介绍如何连接 EMR Serverless OLAP 实例, 以 StarRocks 实例类型为例。

1 前提条件

已创建 StarRocks 实例,详情参见创建实例。

2 通过客户端方式连接 StarRocks 实例

使用开源 MYSQL 客户端连接 StarRocks,操作步骤如下:

2.1 下载 MYSQL 客户端并安装数据库

  1. MySQL 客户端下载

  2. 解压缩安装包。

    tar -zxvf mysql-xxx.tar.gz
    
  3. 将解压后的 MySQL 目录复制到本地软件目录。

    cp mysql-xxx /usr/local/mysql -r
    
  4. 添加系统 MySQL 用户组和 MySQL 用户。

    sudo groupadd mysql
    sudo useradd -r -g mysql mysql
    
  5. 安装数据库。

    1. 进入安装 MySQL 软件目录。

      cd /usr/local/mysql
      
    2. 修改当前目录的所有权为 MySQL 用户和 MySQL 用户组。

      chown -R mysql:mysql ./
      
    3. 安装数据库。

      ./bin/mysql_install_db --user=mysql
      

      您也可以同时进行初始化操作:

      sudo bin/mysqld --initialize --user=mysql
      
    4. 修改当前目录的所有权为 root 用户。

      chown -R root:root ./
      
    5. 修改当前 data 目录的所有权为 MySQL 用户。

      chown -R mysql:mysql data
      
    6. 复制文件。

      cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
      
  6. 启动 MySQL 服务。

    sudo service mysql start
    

2.2 连接 StarRocks 实例

  1. 连接 StarRocks 实例

    /usr/local/mysql/bin/mysql -u admin -p -h xxx.cdw.emr-volces.com -P 9030
    

    说明

    xxx.cdw.emr-volces.com 为 StarRocks 的内网地址。您可以在 StarRocks 的实例详情 > 网络信息区域查看。

3 通过 JDBC 方式连接 StarRocks 实例

  1. 添加依赖至 pom.xml

    <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.33</version>
    </dependency>
    

    说明

    mysql-connector-java 为 MYSQL Driver 版本,您可根据实际情况修改。

  2. 连接 StarRocks 实例。

    示例代码如下:

    public class EmrStarrocks {
        public static void main(String[] args) {
            Connection connection = null;
            Statement statement = null;
            
            // 数据库的连接信息、用户名和密码,需要根据实际情况设置。
            String url = "jdbc:mysql://localhost:9030/database?useUnicode=true";
            String user = "user";
            String password = "password";
            try{
                // 注册JDBC驱动。驱动名称根据实际情况设置。
                Class.forName("com.mysql.jdbc.Driver");
    
                // 获取连接。
                conn = DriverManager.getConnection(url, user, password);
    
                // 执行查询。
                statement = conn.createStatement();
                String sql = "SELECT id FROM people";
                ResultSet result = statement.executeQuery(sql);
                
                // 关闭资源。
                result.close();
                statement.close();
                connection.close();
            }catch(SQLException se){
                // 处理JDBC错误。
            }catch(Exception e){
                // 处理其他错误。
            }finally{
                // 关闭资源。
                if(statement!=null) {
                    statement.close();
                }
                if(connection!=null) {
                    connection.close();
                }
            }
        }        
    }