天天看點

Logstash 從mysql導入到Elasticsearch(全量導入) 步驟xxx.confxxx.sql 啟動腳本 多腳本啟動注意

1.elasticsearch版本:7.1.1

2.logstash版本:7.1.1

 步驟

  1. 在logstash目錄下建立目錄mysql_plugin
  2. 目錄下建立一個xxxx.conf檔案  名字随意               
  3. 建立sql檔案

xxx.conf

input {
    stdin {
    }
    jdbc {
   
      jdbc_connection_string => "jdbc:mysql://localhost:3306/yourdatabase?characterEncoding=UTF-8&useSSL=false"

      jdbc_user => "yourname"
      jdbc_password => "password"

      jdbc_driver_library => "D:/tools/gradle-4.10.3/repository/caches/modules-2/files-2.1/mysql/mysql-connector-java/5.1.10/b83574124f1a00d6f70d56ba64aa52b8e1588e6d/mysql-connector-java-5.1.10.jar"

      jdbc_driver_class => "com.mysql.jdbc.Driver"
      jdbc_paging_enabled => "true"
      jdbc_page_size => "1000"
   
      statement_filepath => "D:/tools/es/logstash-7.1.1/mysql_plugin/xxx.sql"
  

    }
}
 
filter {
    json {
        source => "message"
        remove_field => ["message"]
    }
}
 
output {
    elasticsearch {
        hosts => ["localhost:9200"]
        index => "youindexname"
        document_type => "_doc"

    }
    stdout {
        codec => json_lines
    }
}
           

xxx.sql

select * from yourtable

 啟動腳本

切換到logstash的bin目錄下,執行以下指令

logstash -f ../mysql_plugin/xxx.conf 

 多腳本啟動

若啟動多個腳本,需要指定data目錄,因為不同的軟體程序會使用不同的緩存資料,若再啟動一個xxx2.conf配置,需要使用以下指令

logstash -f ../mysql_plugin/xxx2.conf --path.data=../data2/

前提是在logstash目錄下建立一個data2的檔案夾

注意

 xxx.conf檔案内的代碼不要有注釋

繼續閱讀