Bootstrap

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

目录

1 .Logstash官网

2. 准备工作

3.创建配置文件

4. 启动

5. 版本不一致导致的无法启动

6.目录写错说明


1 .Logstash官网

Logstash:收集、解析和转换日志 | Elasticicon-default.png?t=O83Ahttps://www.elastic.co/cn/logstash

首先在官网上选择下载

2. 准备工作

Mysql的jar包下载地址:

MySQL :: 下载 MySQL Connector/J (存档版本)icon-default.png?t=O83Ahttps://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

input {

  jdbc {
    jdbc_driver_library => "D:/Logstach/logstash-7.8.0/logstash-core/lib/jars/mysql-connector-java-8.0.11.jar"
    jdbc_driver_class => "com.mysql.cj.jdbc.Driver"
    jdbc_connection_string => "jdbc:mysql://localhost:3306/holy_flower?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai"
    jdbc_user => "root"
    jdbc_password => "1234"
    jdbc_validate_connection => true
    jdbc_paging_enabled => true
    jdbc_page_size => 100
    schedule => "* * * * *"
    statement => "SELECT id,flower_name,type,growth_habit,description,is_deleted,create_time,update_time FROM tb_flower"
    use_column_value => true
    tracking_column => "update_time"
    last_run_metadata_path => "D:/Logstach/logstash-7.8.0/data/last_time_flower.txt"
  }
}

output {

    elasticsearch {
      hosts => ["localhost:9200"]
      index => tb_flower"
      document_id => "%{id}"
    }


  stdout {
    codec => json_lines
  }
}

4. 启动

logstash -f mysql_to_es.conf

5. 版本不一致导致的无法启动

选择下载跟es一致的版本号

Past Releases of Elastic Stack Software | Elasticicon-default.png?t=O83Ahttps://www.elastic.co/downloads/past-releases#logstash

6.目录写错说明

注意:应该是logstash,而不是logstach

;