You need to enable JavaScript to run this app.
导航

使用 MySQL Console 客户端访问企业级 SQL 分析节点

最近更新时间2024.02.26 17:34:53

首次发布时间2024.01.09 20:51:22

企业级 SQL 分析节点启用后,您可以在本地 MySQL 客户端连接 SQL 分析节点(数据库服务),然后可以通过外表方式查询分析实例中的索引数据。

注意事项

目前 ES 6.7.1 版本实例暂不支持企业级 SQL 分析节点。

准备工作

在本地 MySQL 客户端连接 SQL 分析节点时,需要提前完成以下准备工作:

  • 在本地已安装 MySQL,并配置环境变量。
  • 如果需要使用公网连接 SQL 分析节点,需要提前开启公网访问,请参见配置 SQL 分析节点公网访问
  • 连接 SQL 分析节点前,需要提前在实例的企业级 SQL 分析节点页面查看并获取连接信息,包含 SQL 分析节点的访问地址、端口号、登录用户和密码。
    图片

步骤一:在实例中创建索引并写入数据

  1. 登录 Kibana/Dashboards

  2. Dev Tools 页面,执行以下命令,创建索引。

    PUT sql-demo
    {
        "settings":{
            "number_of_shards":3,
            "number_of_replicas":1
        },
        "mappings":{
            "properties":{
                "k1":{"type":"long"},
                "k2":{"type":"date"},
                "k3":{"type":"keyword"},
                "k4":{"type":"text", "analyzer":"standard"},
                "k5":{"type":"keyword"}
            }
        }
    }
    
  3. Dev Tools 页面,执行以下命令,往索引中写入数据。

    POST /_bulk
    { "index": { "_index": "sql-demo", "_id": "1" } }
    {"k1":"20240119","k2":"2024-01-19","k3":"Document test","k4":"This is the first message.","k5":"user A"}
    { "index": { "_index": "sql-demo", "_id": "2" } }
    {"k1":"20240119","k2":"2024-01-19","k3":"Document test","k4":"This is the second message.","k5":"user B"}
    

步骤二:在 SQL 分析节点中创建外表查询索引数据

  1. 在本地命令行工具中,执行以下命令,连接数据库服务。

    mysql -h{HOST} -P{PORT} -uadmin -p{PASSWORD}
    
    • HOST:SQL 分析节点的访问地址域名,按需选择私网访问地址域名或公网访问地址域名。
    • PORT:SQL 分析节点的访问端口
    • PASSWORD:admin 用户的登录密码,密码为启用 SQL 分析节点时设置的密码。如果您忘记了登录密码,您可以选择重置密码,具体操作请参见重置登录密码
  2. 创建数据库。

    CREATE DATABASE IF NOT EXISTS sqlDemo_DB;
    
  3. 创建外表。

    1. 选择数据库。
    USE sqlDemo_DB;
    
    1. 创建外表。

    说明

    外表的 Schema 需要和实例中目标索引的字段信息保持一致。

    CREATE EXTERNAL TABLE `es_table` (
      `k1` bigint(20) COMMENT "",
      `k2` datetime COMMENT "",
      `k3` varchar(20) COMMENT "",
      `k4` varchar(100) COMMENT "",
      `k5` varchar(20) COMMENT ""
    ) ENGINE=ELASTICSEARCH 
    PROPERTIES (
      "hosts" = "https://es-data-svc-0080c**.o-0080c**:9200",
      "index" = "sql-demo",
      "user" = "admin",
      "password" = "Pwd@XXX",
      "http_ssl_enabled" = "true"
    );
    
    • hosts:与实例构建连接的服务地址,需要自主进行构建。服务地址的格式为http(s)://es-data-svc-{实例ID后缀}.{完整的实例ID}:9200,示例值为https://es-data-svc-0081**.o-0081**:9200
    • index:目标索引的名称。
    • user:连接实例的用户。您可以直接使用 admin 用户,但更建议您使用自建的低权限、只读用户。
    • password:用户的密码。
      如果使用 admin 用户,但忘记了密码,您可以选择重置密码,具体操作请参见重置实例密码
    • http_ssl_enabled:是否启用了 SSL 协议加密。

      说明

      如果实例切换传输协议、重置外表用户密码,将会导致已经在 SQL 分析节点中创建的外表将无法继续使用,您需要重新创建外表才可以继续查询分析索引数据。

    1. (可选)查询新建表是否存在。

      SHOW TABLES;
      

      图片

    2. 查询表格数据,判断是否返回索引中的文档数据。

      SELECT * FROM es_table;
      

      图片