Elasticsearch同步MySQL

  • 花了一個晚上+一個上午,終於將MySQL中的數據同步到Elasticsearch,作個簡單的記錄。html

  • 整個過程須要用到MySQL的river插件GitHub上有installation能夠參考。java

  • 雖然最後的配置過程很簡單,但我在配置的過程當中遇到了很多的問題,多是由於ES版本的緣由吧。能夠參考...mysql

  • 環境:Ubuntu + JDK7git

配置過程以下:

step 1.

下載ES,我選擇的版本是elasticsearch-1.1.0,選擇本身的安裝路徑${ES_HOME}github

step 2.

進入${ES_HOME}sql

cd  ${ES_HOME}

安裝river插件curl

bin/plugin --install river-jdbc --url http://bit.ly/1jyXrR9

下載mysql-connector-java-5.1.30-bin.jar,把它放到${ES_HOME}/libelasticsearch

step 3.

建立一個JDBC river測試

curl -XPUT 'localhost:9200/_river/my_jdbc_river/_meta' -d '{
     "type" : "jdbc",
     "jdbc" : {
         "driver" : "com.mysql.jdbc.Driver",
         "url" : "jdbc:mysql://localhost:3306/profile",
         "user" : "",
         "password" : "",
         "sql" : "select * from profile.user",
         "index" : "profile",
         "type" : "user"
     }
 }'

其中profilescheme的名稱,usertable的名稱,做爲測試用。url

step 4.

測試導入效果

curl -XGET 'localhost:9200/profile/user/_search?pretty&q=*'
相關文章
相關標籤/搜索