1.下载logstash-8.2.0-windows-x86_64

2.解压

3.在E:\esproject\logstash-8.2.0-windows-x86_64\logstash-8.2.0目录下创建logstash.conf

input {

  # 多张表的同步只需要设置多个jdbc的模块就行了

  jdbc {

      # mysql 数据库链接,shop为数据库名

      jdbc_connection_string => "jdbc:mysql://ip:3306/data-grid?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai"

      # 用户名和密码

      jdbc_user => "root"

      jdbc_password => "h_smartcity"

      # 驱动

      jdbc_driver_library => "E:\maven\LocalWareHouse\mysql\mysql-connector-java\8.0.22\mysql-connector-java-8.0.22.jar"

      # 驱动类名

      jdbc_driver_class => "com.mysql.jdbc.Driver"

      #是否分页

      jdbc_paging_enabled => "true"

      jdbc_page_size => "680000"

      #直接执行sql语句

      statement =>"select `code`, `name`, `level`, `pcode`, `TENANT_ID_`, `pname`  from  area_code "

      # 执行的sql 文件路径+名称

      #设置监听间隔  各字段含义(由左至右)分、时、天、月、年,全部为*默认含义为每分钟都更新

      schedule => "*/30 * * * *"

      # 索引类型

      #type => "jdbc"

    }

}

output {

  elasticsearch {

        #es的ip和端口

        hosts => ["http://10.16.5.122:9200"]

        #ES索引名称(自己定义的)

            index => "xzqu"

        #文档类型

        document_type => "_doc"

        #设置数据的id为数据库中的字段

        document_id => "%{code}"

    }

    stdout {

        codec => json_lines

    }

}

4.在cmd窗口中运行

./bin/logstash -f logstash.conf


大家都在看: