window 使用

解压,进入bin目录
logstash -e 'input { stdin { } } output { stdout {} }'

stdin,表示输入流,指从键盘输入
stdout,表示输出流,指从显示器输出
命令行参数:
-e 执行
--config 或 -f 配置文件,后跟参数类型可以是一个字符串的配置或全路径文件名或全路径
路径(如:/etc/logstash.d/,logstash会自动读取/etc/logstash.d/目录下所有*.conf 的文
本文件,然后在自己内存里拼接成一个完整的大配置文件再去执行)
 

大括号里面内容可以改

ElasticSearch-(五)(Logstash)elasticsearch与MySQL数据同步

测试 输入什么,输出什么

ElasticSearch-(五)(Logstash)elasticsearch与MySQL数据同步

MySQL数据导入Elasticsearch
(1)在logstash-5.6.8安装目录下创建文件夹mysqletc (名称随意)
(2)文件夹下创建mysql.conf (名称随意) ,内容如下:

使用 mysqletc名称可以更改

ElasticSearch-(五)(Logstash)elasticsearch与MySQL数据同步

 

mysql.conf配置文件

input {
      jdbc {
          # mysql jdbc connection string to our backup databse
          jdbc_connection_string => "jdbc:mysql://xxx.xxx.xxx.xxx:3306/tensquare_article?characterEncoding=UTF8&useSSL=false"
          # the user we wish to excute our statement as
          jdbc_user => "root"
          jdbc_password => "XXX"
          # the path to our downloaded jdbc driver  
          jdbc_driver_library => "F:\tensquare\logstash-5.6.8\mysqletc\mysql-connector-java-5.1.46.jar"
          # the name of the driver class for mysql
          jdbc_driver_class => "com.mysql.jdbc.Driver"
          jdbc_paging_enabled => "true"
          jdbc_page_size => "50"
          #以下对应着要执行的sql的绝对路径。
          #statement_filepath => ""
          statement => "SELECT id,title,content,state FROM tb_article"
          #定时字段 各字段含义(由左至右)分、时、天、月、年,全部为*默认含义为每分钟都更新(测试结果,不同的话请留言指出)
              #一分钟同步一次
          schedule => "* * * * *"
      }
}

  output {
    elasticsearch {
        #ESIP地址与端口
        hosts => "127.0.0.1:9200" 
        #ES索引名称(自己定义的)
        index => "tensquare_article"
        #自增ID编号
        document_id => "%{id}"
        document_type => "article"
    }
    stdout {
        #以JSON格式输出
        codec => json_lines
    }
}

ElasticSearch-(五)(Logstash)elasticsearch与MySQL数据同步

输入 logstash -f 找到配置文件执行

logstash -f ../mysqletc/mysql.conf

ElasticSearch-(五)(Logstash)elasticsearch与MySQL数据同步

如果出现问题了

1重启 elasticsearch

 ElasticSearch-(五)(Logstash)elasticsearch与MySQL数据同步

2重启 

elasticsearch-head-master

命令 grunt server

ElasticSearch-(五)(Logstash)elasticsearch与MySQL数据同步

 

3重启 logstash

命令 logstash -f ../mysqletc/mysql.conf

ElasticSearch-(五)(Logstash)elasticsearch与MySQL数据同步

相关文章:

  • 2021-09-11
  • 2021-05-31
  • 2021-12-05
  • 2021-09-13
  • 2021-09-30
  • 2021-05-10
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-06-16
  • 2021-02-27
  • 2021-08-20
  • 2021-12-12
  • 2022-12-23
  • 2022-12-23
  • 2022-02-17
相关资源
相似解决方案