简体   繁体   中英

I can't connect my MySQL Database with jdbc in logstash

I want to input some data from MySQL database with logstash.

Here is my jdbc.conf

input {
  jdbc {
    jdbc_driver_library => "/mysql-connector-java-5.1.40/mysql-connector-java-5.1.40-bin.jar"
    jdbc_driver_class => "com.mysql.jdbc.Driver"
    jdbc_connection_string => "jdbc:mysql://111.11.11.111:3306/dbname"
    jdbc_user => "user"
    jdbc_password => "****"
    statement => "SELECT title from test"
  }
}

output {
  stdout { codec => json }
}

username , password , host , dbname and column_name are fake. and output is just for testing. My database is on the same VPS server.

--configtest is cleared. However, I got this error.

/opt/logstash/bin/logstash -f /opt/logstash/bin/config/jdbc.conf
Settings: Default pipeline workers: 4
Pipeline aborted due to error {
    :exception=>"LogStash::ConfigurationError", 
    :backtrace=>[
        "/opt/logstash/vendor/bundle/jruby/1.9/gems/logstash-input-jdbc-3.1.0/lib/logstash/plugin_mixins/jdbc.rb:159:in `prepare_jdbc_connection'", 
        "/opt/logstash/vendor/bundle/jruby/1.9/gems/logstash-input-jdbc-3.1.0/lib/logstash/inputs/jdbc.rb:187:in `register'", 
        "/opt/logstash/vendor/bundle/jruby/1.9/gems/logstash-core-2.4.0-java/lib/logstash/pipeline.rb:330:in `start_inputs'", 
        "org/jruby/RubyArray.java:1613:in `each'",
        "/opt/logstash/vendor/bundle/jruby/1.9/gems/logstash-core-2.4.0-java/lib/logstash/pipeline.rb:329:in `start_inputs'", 
        "/opt/logstash/vendor/bundle/jruby/1.9/gems/logstash-core-2.4.0-java/lib/logstash/pipeline.rb:180:in `start_workers'", 
        "/opt/logstash/vendor/bundle/jruby/1.9/gems/logstash-core-2.4.0-java/lib/logstash/pipeline.rb:136:in `run'", 
        "/opt/logstash/vendor/bundle/jruby/1.9/gems/logstash-core-2.4.0-java/lib/logstash/agent.rb:491:in `start_pipeline'"],
     :level=>:error}
stopping pipeline {:id=>"main"}

I got the LogStash::ConfigurationError . Waht's wrong with my config?

I finally figured it out. It was just a bug of jdbc-driver. While I was facing to the bug, I was using ver5.1.40 via the mysql webpage. After I changed it to mysql-connector-java-5.1.17 via yum, It does work.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM