Logstash同步MySQL数据到Elasticsearch

1.下载Logstash或解压
在这里插入图片描述
2.解压,进入bing目录输入命令
logstash -e ‘input { stdin { } } output { stdout {} }’
注释:stdin,表示输入流,指从键盘输入stdout,表示输出流,指从显示器输出命令行参数: -e 执行 --config 或 -f 配置文件,后跟参数类型可以是一个字符串的配置或全路径文件名或全路径 路径(如:/etc/logstash.d/,logstash会自动读取/etc/logstash.d/目录下所有*.conf 的文本文件,然后在自己内存里拼接成一个完整的大配置文件再去执行

3.在logstash-5.6.8目录下新建文件夹,mysqletc:
在mysqletc中新建mysql.conf文件
文件内容如下:
input {
jdbc {
# 连接数据的url
jdbc_connection_string => “”
# 连接数据的用户名和密码
jdbc_user => “用户名”
jdbc_password => “密码”
# 驱动jar的路径(绝对路径)
jdbc_driver_library => “驱动jar的路径”
# 驱动类全限定名
jdbc_driver_class => “com.mysql.jdbc.Driver”
# 是否分页
jdbc_paging_enabled => “true”
# 一页查询的数量
jdbc_page_size => “10000”
#以下对应着要执行的sql的绝对路径(可以不配,配下面的statement就行)。
#statement_filepath => “”
#执行的sql语句
statement => “SELECT id,title,content FROM tb_article”
#定时字段 各字段含义(由左至右)分、时、天、月、年,全部为默认含义为每分钟都更新(测试结果,不同的话请留言指出)
schedule => "
* * * *"
}
}

output {
elasticsearch {
#ESIP地址与端口
hosts => “localhost:9200”
#ES索引库名称(自己定义的)
index => “自已定义的库名称”
#自增ID编号和type
document_id => “%{id}”
document_type => “类型”
}
stdout {
#以JSON格式输出
codec => json_lines
}
}

4.命令执行
logstash -f …/mysqletc/mysql.conf

注意logstash是能用于新增、更新后,才会实时更新,物理删除是不会更新的,所以我们可以通过逻辑删除(更新)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值