2

我正在尝试将 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

4

1 回答 1

7

我相信您对河流的定义不正确。正确的方法是:

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"
    }
}'
于 2014-01-10T02:47:59.890 回答