Elasticsearch:將mysql數據導入到Elasticsearch中

因為elk(Elasticsearch,logstash,Kibana是一家的),所以使用 logstash做為作為導入工具是最好的選擇。

1))下載logstash https://www.elastic.co/cn/logstash

2)解壓後進入logstash目錄

3)新版本(2020/3/12,7.6.1)無需執行bin/logstash-plugin install logstash-input-jdbc,包內自帶

4)新建導入的配置文件

vi cat config/mysql-to-elasticsearch.conf

<code>input {

jdbc {
jdbc_connection_string => "jdbc:mysql://127.0.0.1:3786/datacapture?useUnicode=true&characterEncoding=UTF-8&serverTimezone=GMT%2B8&allowMultiQueries=true"
jdbc_user => "root"
jdbc_password => "123456"
jdbc_driver_library => "/Users/hongyanma/repo/mysql/mysql-connector-java/5.1.46/mysql-connector-java-5.1.46.jar"
jdbc_driver_class => "com.mysql.jdbc.Driver"
jdbc_paging_enabled => "true"
jdbc_page_size => "50000"
jdbc_default_timezone => "Asia/Shanghai"
statement_filepath => "/Users/hongyanma/gitspace/java/logstash-7.6.1/config/layer_video.sql"
schedule => "* * * * *"
type => "jdbc"
}
}


output {
elasticsearch {
hosts => "127.0.0.1:9200"
# protocol => "http"
index => "datacapture"
document_type => "video"
document_id => "%{id}"
}

}
/<code>

vi /Users/hongyanma/gitspace/java/logstash-7.6.1/config/person_info.sql

<code>select * from person_info/<code>

注意sql結尾不要加分號

4)運行logstash

<code>bin/logstash -f config/mysql-to-elasticsearch.conf/<code>

啟動需要一點時間,然後就會輸出執行的sql


分享到:


相關文章: