logstash同步mysql到es 配置

0. 准备MySQL的驱动
下载并拷贝mysql-connector-java-5.1.44-bin.jar到"/Elastic/logstash-6.0.0-beta2/lib/mysqldriver/mysql-connector-java-5.1.44-bin.jar"


1. logstash配置文件 mysql.conf
input {
    jdbc {
        jdbc_driver_library => "/Elastic/logstash-6.0.0-beta2/lib/mysqldriver/mysql-connector-java-5.1.44-bin.jar"
        jdbc_driver_class => "com.mysql.jdbc.Driver"
        jdbc_connection_string => "jdbc:mysql://es:3306/forelk?autoReconnect=true&useSSL=false"
        jdbc_user => "root"
        jdbc_password => "root"
        schedule => "* * * * *"
        jdbc_default_timezone => "Asia/Shanghai"
        statement => "SELECT * FROM elktable;"
    }
}
output {
    elasticsearch {
        index => "elkdb"
        document_type => "elktable"
        document_id => "%{elkid}"
        hosts => ["es:9200"]
    }
}


2. 参数配置说明:
dbc_driver_library:
数据库驱动路径,这里我填写的是绝对路径,可自行尝试相对路径;


jdbc_driver_class:
驱动名称;


jdbc_connection_string:
数据库的连接字符串;
forelk为数据库名;
?autoReconnect=true&useSSL=false自动重连并禁用SSL;


jdbc_user:
数据库用户名;


jdbc_password:
数据库密码;


schedule:
重复执行导入任务的时间间隔;


jdbc_default_timezone:
默认时区设置;


statement:
导入的表(查询SQL,可以过滤数据)


index:
索引名称(类似数据库名称);


document_type:
类型名称(类似数据库表名);


document_id:
类似主键;


hosts:
要导入到的Elasticsearch所在的主机;


3. 执行导入
cd bin
./logstash -f mysql.conf


4.执行查询
http://es:5601 ->Dev Tools -> GET elkdb/_search


5.准备mysql数据,建库forelk 建表elktable
CREATE DATABASE `forelk` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_bin */;


CREATE TABLE `elktable` (
  `elkid` int(11) NOT NULL,
  `elkname` varchar(45) COLLATE utf8_bin DEFAULT NULL,
  `elkage` int(11) DEFAULT NULL,
  `elksex` tinyint(4) DEFAULT NULL,
  `elkbirth` date DEFAULT NULL,
  PRIMARY KEY (`elkid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;


INSERT INTO `forelk`.`elktable`
(`elkid`,
`elkname`,
`elkage`,
`elksex`,
`elkbirth`)
VALUES
(111,
aa,
11,
1,
2006);


INSERT INTO `forelk`.`elktable`
(`elkid`,
`elkname`,
`elkage`,
`elksex`,
`elkbirth`)
VALUES
(222,
bb,
22,
0,
1995);



  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值