logstash定時將mysql種數據同步到elasticsearch


以Windows操作系統為例

  1.下載logstash安裝包,解壓,配置好環境

       2.在config目錄中新增一個jdbc.conf

input {
    stdin {
    }
    jdbc {
        # mysql 數據庫鏈接,es為數據庫名
        jdbc_connection_string => "jdbc:mysql://localhost:3306/es?characterEncoding=utf8&useSSL=true&serverTimezone=GMT"
        # 用戶名和密碼
        jdbc_user => "root"  
        jdbc_password => "root"
        # 驅動 
        jdbc_driver_library => 
        "C:/Users/Administrator/.m2/repository/mysql/mysql-connector-java/8.0.13/mysql-connector-java-8.0.13.jar"
        # 驅動類名 
        jdbc_driver_class => "com.mysql.jdbc.Driver"
        jdbc_paging_enabled => "true"
        jdbc_page_size => "50000"
        # 執行的sql 文件路徑+名稱
        statement_filepath => "H:/software/java/logstash-6.2.2/config/test.sql"
        # 設置監聽間隔  各字段含義(由左至右)分、時、天、月、年,全部為*默認含義為每分鍾都更新 
        schedule => "* * * * *"
        # 設定ES索引類型
        type => "content"
    }
}
filter {  
    json {  
            source => "message"  
            remove_field => ["message"]  
    }  
} 
output {
    elasticsearch { 
        hosts => ["localhost:9200"]
        #ES索引名稱(自己定義的)
        index => "cmscontent"
        #自增ID編號
        document_id => "%{id}"
    }
    stdout {
        codec => json_lines
    }
}

  3.在config目錄中新增一個test.sql   內容為:select * from test

       4.cmd在bin目錄下執行logstash -f ../config/jdbc.conf


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM