我正在尝试将ElasticSearch与MySQL结合使用. JDBC River似乎正是我想要的,但我不能将我的数据插入除了jdbc/jdbc
使用之外的任何地方:
curl -XPUT 'localhost:9200/_river/my_jdbc_river/_meta' -d '{ "type" : "jdbc", "jdbc" : { "driver" : "com.mysql.jdbc.Driver", "url" : "jdbc:mysql://localhost:3306/the_db", "user" : "root", "password" : "hunter2", "sql" : "select * from hamburgers", "index" : "the_db", "type" : "hamburgers" } }'
我希望可以访问数据localhost:9200/the_db/hamburgers
(从我可以从文档中清除的内容),但它完全可以访问localhost:9200/jdbc/jdbc
我相信你错误地定义了这条河.正确的方法是:
curl -XPUT 'localhost:9200/_river/my_jdbc_river/_meta' -d '{ "type" : "jdbc", "jdbc" : { "driver" : "com.mysql.jdbc.Driver", "url" : "jdbc:mysql://localhost:3306/the_db", "user" : "root", "password" : "hunter2", "sql" : "select * from hamburgers", }, "index" : { "index" : "the_db", "type" : "hamburgers" } }'