You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Kibana中以表格形式展示MySQL生产服务器数据

在Kibana中以表格形式展示MySQL数据的实现方法

可以在Kibana中以表格形式展示MySQL数据,以下是基于你已部署并运行ELK与Beats的具体实现步骤:

步骤1:确保MySQL数据已同步至Elasticsearch

根据你要展示的MySQL数据类型,选择对应的采集/同步方式:

情况A:采集MySQL日志数据(慢查询、错误日志等)

  • 启用Filebeat的MySQL模块:
    filebeat modules enable mysql
    
  • 编辑模块配置文件modules.d/mysql.yml,指定日志文件路径:
    - module: mysql
      error:
        enabled: true
        var.paths: ["/var/log/mysql/error.log*"]
      slowlog:
        enabled: true
        var.paths: ["/var/log/mysql/slow.log*"]
    
  • 重启Filebeat服务:
    systemctl restart filebeat
    
  • 验证数据:在Kibana的Dev Tools中执行GET /filebeat-*/_search,确认返回结果包含MySQL日志文档。

情况B:同步MySQL业务数据表数据

若需展示业务库中的表数据,需通过Logstash的JDBC插件完成同步:

  • 安装Logstash JDBC输入插件:
    bin/logstash-plugin install logstash-input-jdbc
    
  • 下载MySQL JDBC驱动(mysql-connector-java.jar),放置到Logstash的vendor/jars目录。
  • 创建Logstash配置文件mysql-jdbc.conf(按需调整参数):
    input {
      jdbc {
        jdbc_driver_library => "/usr/share/logstash/vendor/jars/mysql-connector-java.jar"
        jdbc_driver_class => "com.mysql.cj.jdbc.Driver"
        jdbc_connection_string => "jdbc:mysql://your-mysql-host:3306/your-db-name?useSSL=false&serverTimezone=UTC"
        jdbc_user => "your-mysql-username"
        jdbc_password => "your-mysql-password"
        schedule => "* * * * *" # 同步频率,按需修改
        statement => "SELECT * FROM your-table-name WHERE update_time > :sql_last_value" # 增量同步逻辑
        use_column_value => true
        tracking_column => "update_time"
        last_run_metadata_path => "/var/lib/logstash/.mysql_last_run"
      }
    }
    
    output {
      elasticsearch {
        hosts => ["http://your-es-host:9200"]
        index => "mysql-business-%{+YYYY.MM.dd}"
        document_id => "%{primary-key-field}" # 用业务表主键避免重复数据
      }
    }
    
  • 启动Logstash加载配置:
    bin/logstash -f mysql-jdbc.conf
    
  • 验证数据:在Kibana Dev Tools中执行GET /mysql-business-*/_search,确认业务数据已同步至ES。

步骤2:在Kibana中创建表格可视化

  1. 进入Kibana的Management → Index Patterns,创建对应MySQL数据的索引模式(如filebeat-*或mysql-business-*),配置时间字段(若数据包含时间维度)。
  2. 进入Visualize Library,点击Create visualization,选择Data table类型。
  3. 选择已创建的索引模式作为数据源。
  4. 配置表格内容:
    • 在Metrics区域添加统计指标(如Count、字段的Sum/Average等)。
    • 在Buckets区域添加Rows或Columns,选择需要展示的字段(如慢查询的query、业务表的user_name等),可添加多个字段实现多维度拆分。
  5. 调整表格的排序、列别名、数值格式等设置。
  6. 点击Save保存可视化,后续可将其添加至Dashboard用于报表制作。

内容的提问来源于stack exchange,提问作者Ashwani Pandita

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 16:13:11