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数据

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

相关推荐
飞飞传输2 小时前
飞驰云联文件交换建设方法论:从单点传输到持续治理
大数据·运维·安全
得帆低代码PaaS2 小时前
企业级 Agent 架构:MCP、Integration、数据与治理能力
大数据·人工智能·架构·ai agent·企业数字化·mcp
TDengine (老段)9 小时前
TDengine IDMP 十大实用功能(9)
大数据·数据库·人工智能·物联网·时序数据库·tdengine·idmp
播播资源10 小时前
同账户实测 11 个多模态模型:图像 0.03 元起、竖屏视频 8 元一条,最贵和最便宜差 267 倍
大数据·人工智能·深度学习
全栈陈序员12 小时前
Git】从入门到精通(八)—— git log:查看提交历史
大数据·git·elasticsearch
演艺大赏13 小时前
NiFi 从 3 台扩到 25 台:三轮扩容后我才明白,证书必须全量重签、安装包绝对不能拷
大数据
做科研的周师兄13 小时前
【R语言实战】MixSIAR 氢氧同位素水源解析全流程:从混合空间校验到贝叶斯 MCMC 收敛诊断(后附完整代码)
java·大数据·开发语言
isfox15 小时前
MapReduce 数据清洗:脏数据进来,干净数据出去,连 Reduce 都省了
大数据
Francek Chen16 小时前
【大数据处理与分析】数据仓库Hive:09 Hive 编程实践
大数据·数据仓库·hive·hadoop·sql
Percep_gan16 小时前
Linux中安装gitea,很详细
linux·elasticsearch·gitea