es配置elk实现增量同步以及全量同步

需要配置这个文件

XML 复制代码
input {
    stdin {
    }
    jdbc {
      # mysql 数据库链接,center为数据库名,jdbc版本比较大的要加上?后面那串字符
      jdbc_connection_string => "jdbc:mysql://192.168.161.131:3307/mz-master"
      # 用户名和密码

      jdbc_user => "root"
      jdbc_password => "123456"
      # 驱动  需要手动上传jar
      jdbc_driver_library => "/opt/mysql-connector-java-8.0.29.jar"
      # 驱动类名
      jdbc_driver_class => "com.mysql.cj.jdbc.Driver"
      jdbc_paging_enabled => "true"
      jdbc_page_size => "1000"

      # 需要记录查询结果某字段的值时,此字段为true,否则默认tracking_column为timestamp的值;
        use_column_value => true
        # 需要记录的字段,用于增量同步,需是数据库字段
        tracking_column => user_id

        # record_last_run上次数据存放位置;
        record_last_run => true
        #上一个sql_last_value值的存放文件路径, 必须要在文件中指定字段的初始值
        last_run_metadata_path => "/opt/last_id.txt"
        # 是否清除last_run_metadata_path的记录,需要增量同步时此字段必须为false;
        clean_run => false



      statement=> "select * from sys_users where user_id > :sql_last_value"


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

         }
 }


output {
    elasticsearch {
        # ES的IP地址及端口
          hosts => ["192.168.161.128:9200"]
        # 索引名称,elasticsearch叫做索引 和实体类中的索引要一致
          index => "users_index"
        # 自增ID id必须是待查询的数据表的序列字段 没有可以不写
         document_id => "%{user_id}"
    }
    stdout {
       # JSON格式输出
         codec => json_lines
    }
}

然后执行 /opt/logstash-7.9.3/bin/logstash -f /opt/logstash-7.9.3/config/jdbc.conf

优点 可以实时监控mysql来更新更新es数据

缺点 需要定期清理日志文件

相关推荐
acrel76 小时前
安科瑞Acrel-1000变电站综合自动化系统在合肥某新材料公司35kV综合自动化项目中的应用分析
大数据·人工智能
V哥AI增长7 小时前
小红书笔记在生成式AI引擎中的可见性机制解析:从抓取原理到GEO工程化实践
大数据·人工智能·笔记
SimLine芯见10 小时前
以可靠性为中心的RCM KVM远程管控在多行业高端制造中的应用
大数据·人工智能·制造
大大大大晴天11 小时前
StarRocks 的查询性能为什么快?
大数据
林间码客11 小时前
从DevOps到DevSecOps:构建现代软件交付的基石与护城河
大数据·运维·devsecops·devops
天天爱吃肉821812 小时前
【重磅发布:拿下新超仁达代理权 】
大数据·人工智能·python·功能测试·汽车
无忧智库12 小时前
行业大数据治理平台方案拆解:从数据孤岛到主数据、质量、安全全链路治理(PPT)
大数据
方向研究12 小时前
电子布生产
大数据
智塑未来12 小时前
发那科又叫法兰克?译名误区拆解,数控自动化龙头全维度解析
大数据·人工智能·自动化
白鲸开源12 小时前
Apache SeaTunnel 提交一个任务都经过了什么?
大数据·开源·github