更新时间:2025-07-31 GMT+08:00
分享

使用MySQL客户端连接StarRocks集群

用户在弹性云服务器里可以通过手动安装客户端的方法,使用MySQL访问StarRocks集群。

准备工作

  • 创建弹性云服务器,请参考购买ECS章节。
  • 创建StarRocks集群,请参考创建StarRocks存算一体集群
  • 将本地主机IP地址加入ECS安全组中,保证本地主机可以访问ECS。

手动安装MySQL客户端

  1. 使用SSH登录工具,通过弹性IP远程登录到Linux弹性云服务器。具体登录操作步骤请参见弹性云服务器《用户指南》中的“ SSH密码方式登录”章节。
  2. 进入SSH工具的根目录。

    cd /

  3. 在根目录中新建一个文件夹。

    mkdir 文件夹名

  4. 登录后执行以下命令解压安装包。

    cd <客户端安装包存放路径>
    tar -xzvf 客户端压缩包名

    操作步骤提到的“<客户端安装包存放路径>”请替换为实际的客户端存放路径。

  5. 进入bin目录。

    cd mysql-5.7.22-linux-glibc2.12-x86_64/bin/

  6. 然后执行下面的命令连接StarRocks集群。

    ./mysql -uadmin -ppassword -h集群内网地址 -P9030
    • 集群内网地址:集群详情页面中集群访问地址,这里替换成您自己购买的集群的访问地址(FE节点的访问地址,都可以访问集群)。
    • password为您购买集群时设置的密码,如果有特殊符号,特殊符号前面需要\进行转义,如果密码整体用单引号括起来,则特殊字符不需要转义。
    • 端口:FE上的mysql server端口,参见表1
    表1 自定义安全规则组

    方向

    策略

    协议端口/范围

    类型

    目的/源地址

    用途

    出方向

    允许

    全部

    IPv4/IPv6

    0.0.0.0/0

    出方向放行。

    入方向

    允许

    9030

    CloudTable StarRocks集群所在的安全组。

    FE上的mysql server端口。

    允许

    8030

    FE上的http server端口。

    允许

    8040

    BE上的http server的端口。

    允许

    8050

    FE上的https server端口

StarRocks入门使用

  • 数据库操作
    • 查看所有数据库。
      SHOW DATABASES;
    • 创建数据库。
      CREATE DATABASE db_name;
    • 使用数据库。
      USE db_name;
    • 删除数据库。
      DROP DATABASE db_name;
  • 表操作
    • 查看数据库中所有表。
      SHOW TABLES;
    • 创建数据表。
      CREATE TABLE table_name (
          column1 datatype,
          column2 datatype,
          ...
      ) ENGINE=OLAP
      DISTRIBUTED BY HASH(column1) BUCKETS 10;

      创建表示例:

      CREATE TABLE IF NOT EXISTS table_test (
          event_time DATETIME NOT NULL COMMENT "datetime of event",
          event_type INT NOT NULL COMMENT "type of event",
          user_id INT COMMENT "id of user",
          device_code INT COMMENT "device code",
          channel INT COMMENT ""
      )
      DUPLICATE KEY(event_time, event_type)
      DISTRIBUTED BY HASH(user_id)
      PROPERTIES (
      "replication_num" = "3"
      );
    • 查看表结构。
      DESC table_name;
    • 删除数据表。
      DROP TABLE table_name;
    • 修改数据表名。
      ALTER TABLE old_name RENAME new_name;
  • 数据查询
    • 基本查询。
      SELECT * FROM table_name LIMIT 10;
    • 条件查询。
      SELECT * FROM table_name WHERE column1 = 'value';
  • 数据操作
    • 插入单条数据,执行INSERT INTO命令往指定表插入数据,需要指定表名、列、插入的具体值。
      INSERT INTO table_name VALUES (value1, value2, ...);
      • INSERT INTO:关键字,表示要执行插入操作。
      • table_name:要插入数据的目标表名。
      • VALUES:关键字,后面跟着要插入的值列表。
      • (value1, value2, ...):要插入的实际值,必须与表的列顺序和数量匹配。
      • 使用示例:
        INSERT INTO employees (id, name, department, salary) VALUES (2, '李四', '市场部', 7800.00);
    • 批量插入数据,执行INSERT INTO命令往指定表插入数据,需要指定表名、列、插入的具体值。
      INSERT INTO table_name VALUES 
      (value1, value2, ...),
      (value1, value2, ...),
      ...;
    • 更新数据。
      UPDATE table_name SET column1 = value1 WHERE condition;
    • 删除数据。
      DELETE FROM table_name WHERE condition;
  • 实用命令。
    • 查看建表语句。
      SHOW CREATE TABLE table_name;
    • 查看表大小。
      SHOW DATA FROM table_name;
    • 查看表的统计信息。
      SHOW TABLE STATUS LIKE 'table_name';

相关文档