Logstash-Jdbc同步到 elasticsearch
mysql 作为成熟稳定的数据持久化解决方案,广泛地应用在各种领域,但是在数据分析方面稍有不足,而 elasticsearch 作为数据分析领域的佼佼者,刚好可以弥补这项不足,而我们要做的只需要将 mysql 中的数据同步到 elasticsearch 中即可,而 logstash 刚好就可以支持,所有你需要做的只是写一个配置文件而已。
获取Logstash-Jdbc
下载与Logstash相对应的版本号
Logstash-Jdbc插件安装
[root@elk-node1 tmp]# tar -zxvf logstash-input-jdbc-4.3.18.tar.gz
[root@elk-node1 tmp]# mv logstash-input-jdbc-4.3.18 /ELK/
[root@elk-node1 ELK]# cd /ELK/logstash-input-jdbc-4.3.18
[root@elk-node1]# gem build logstash-input-jdbc.gemspec
[root@elk-node1 ELK]# cd /ELK/logstash/bin/
[root@elk-node1 bin]# ./logstash-plugin install /ELK/logstash-input-jdbc-4.3.18/logstash-input-jdbc-4.3.18.gem
Example config
input{
jdbc{
type => "jdbc" #连接类型#连接类型
jdbc_driver_library => "/ELK/logstash/tools/mysql-connector-java-5.1.48.jar" #jdbc驱动包
jdbc_driver_class => "com.mysql.jdbc.Driver" # the name of the driver class for mysql
jdbc_connection_string => "jdbc:mysql://127.0.0.1:3306/DBname" # 数据库连接地址
jdbc_user => "root" # 数据库连接账号
jdbc_password => "123456" # 数据库连接密码
schedule => "* * * * *" #执行 sql 时机,类似 crontab 的调度
connection_retry_attempts => "3" # 数据库重连尝试次数
jdbc_validate_connection => "true" # 判断数据库连接是否可用,默认false不开启
jdbc_validat