centos7

logstash 6.5.4
mysql5.7

配置文件如下
[[email protected] config]# cat db-qa.conf 
input {
  stdin {
  }
  jdbc {
  type => "xxx"
  jdbc_connection_string => "jdbc:mysql://192.168.10.210:3306/pdabc"
  jdbc_user => "root"
  jdbc_password => "pdabc"
  record_last_run => true
  use_column_value => true
  tracking_column => "id"
  last_run_metadata_path => "/usr/local/logstash-6.5.4/data/my_info2"
  clean_run => "false"

  jdbc_driver_library => "/opt/mysql-connector-java-8.0.17/mysql-connector-java-8.0.17.jar"
  jdbc_driver_class => "com.mysql.jdbc.Driver"
  jdbc_paging_enabled => true
  jdbc_page_size => "500"
  statement => "select * from api_info_log_20190823 where id > :sql_last_value"
  schedule => "* * * * *"
  }
}

运行起来之后 耗时越来越久  最后5-6秒   mysql的表大约2G左右

也没有产生/usr/local/logstash-6.5.4/data/my_info2文件

有递增id就不要用limit offset了,建议用 id > min and id < max ,需要修改一下logstash插件的代码,logstash处理这种大量数据的时候性能总是不太好

昨天试了一下 设置了偏移量初始为0,然后select * from api_info_log_20190823 where id > :sql_last_value limit 500 ,搜索就可以了,就是导入数据比较慢,每次查询0.3秒