Hello!
I'm trying to migrate some MySQL data from my local dev Vagrant box into Elasticsearch using the jdbc MySQL connector, and I'm running into a MySQL credentials problem. I'm not sure if the problem is the .conf file, or what.
Here's my config file:
input {
jdbc {
jdbc_driver_library => "/elasticsearch/mysql-connector-java-5.1.44/mysql-connector-java-5.1.44-bin.jar"
jdbc_driver_class => "com.mysql.jdbc.Driver"
jdbc_connection_string => "jdbc:mysql://localhost:3306/my-db-name-here?user=root&useSSL=false"
jdbc_user => "mysql"
statement => "select * from my_table limit 1"
}
}
output {
elasticsearch {
index => "contacts"
document_type => "contact"
document_id => "%{uid}"
hosts => "127.0.0.1"
}
}
I've tried this with jdbc_user set to "mysql" and to "root", both to no avail. MySQL is set up without a password for the root user, and I can log in using the MySQL CLI by issuing the command mysql -u root -D my-db-name-here
without any trouble. Any thoughts?
This is the specific error message I am seeing:
Error: Java::JavaSql::SQLException: Access denied for user 'root'@'localhost'
[ERROR] 2017-10-27 15:01:43.138 [[main]<jdbc] jdbc - Unable to connect to database. Tried 1 times {:error_message=>"Java::JavaSql::SQLException: Access denied for user 'root'@'localhost'"}
Thanks!