使用Logstash 将Mysql的数据导入ElasticSearch中

[复制链接]
发表于 2025-11-10 07:39:14 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
目次
1 .Logstash官网
2. 预备工作
3.创建设置文件
4. 启动
5. 版本差别等导致的无法启动
6.目次写错阐明


1 .Logstash官网

Logstash:网络、剖析和转换日志日志 | Elastic
https://www.elastic.co/cn/logstash
起首在官网上选择下载

2. 预备工作

Mysql的jar包下载所在:
MySQL :: 下载 MySQL Connector/J (存档版本)
https://downloads.mysql.com/archives/c-j/只要这个即可


(1)将Mysql中的jar包,移至到 logstash-core\lib\jars中

(2)进入logstach的bin目次下,创建文件testlogstach.conf,编辑文件

3.创建设置文件

在logstach的bin目次下 创建一个自界说名的设置文件
比方:mysql_to_es.conf
  1. input {
  2.   jdbc {
  3.     jdbc_driver_library => "D:/Logstach/logstash-7.8.0/logstash-core/lib/jars/mysql-connector-java-8.0.11.jar"
  4.     jdbc_driver_class => "com.mysql.cj.jdbc.Driver"
  5.     jdbc_connection_string => "jdbc:mysql://localhost:3306/holy_flower?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai"
  6.     jdbc_user => "root"
  7.     jdbc_password => "1234"
  8.     jdbc_validate_connection => true
  9.     jdbc_paging_enabled => true
  10.     jdbc_page_size => 100
  11.     schedule => "* * * * *"
  12.     statement => "SELECT id,flower_name,type,growth_habit,description,is_deleted,create_time,update_time FROM tb_flower"
  13.     use_column_value => true
  14.     tracking_column => "update_time"
  15.     last_run_metadata_path => "D:/Logstach/logstash-7.8.0/data/last_time_flower.txt"
  16.   }
  17. }
  18. output {
  19.     elasticsearch {
  20.       hosts => ["localhost:9200"]
  21.       index => tb_flower"
  22.       document_id => "%{id}"
  23.     }
  24.   stdout {
  25.     codec => json_lines
  26.   }
  27. }
复制代码

4. 启动

  1. logstash -f mysql_to_es.conf
复制代码

5. 版本差别等导致的无法启动

选择下载跟es同等的版本号
Past Releases of Elastic Stack Software | Elastic
https://www.elastic.co/downloads/past-releases#logstash

6.目次写错阐明

留意:应该是logstash,而不是logstach
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表